Drop non-backend immodules
authorMatthias Clasen <mclasen@redhat.com>
Sat, 11 Nov 2017 01:02:43 +0000 (20:02 -0500)
committerMatthias Clasen <mclasen@redhat.com>
Thu, 15 Feb 2018 21:05:20 +0000 (16:05 -0500)
These are not well integrated, and have not seen any
maintenance in many years.

19 files changed:
modules/input/README.multipress [deleted file]
modules/input/gtkimcontextmultipress.c [deleted file]
modules/input/gtkimcontextmultipress.h [deleted file]
modules/input/gtkimcontextthai.c [deleted file]
modules/input/gtkimcontextthai.h [deleted file]
modules/input/im-multipress.conf [deleted file]
modules/input/imam-et.c [deleted file]
modules/input/imcedilla.c [deleted file]
modules/input/imcyrillic-translit.c [deleted file]
modules/input/iminuktitut.c [deleted file]
modules/input/imipa.c [deleted file]
modules/input/immultipress.c [deleted file]
modules/input/imthai.c [deleted file]
modules/input/imti-er.c [deleted file]
modules/input/imti-et.c [deleted file]
modules/input/imviqr.c [deleted file]
modules/input/meson.build
modules/input/thai-charprop.c [deleted file]
modules/input/thai-charprop.h [deleted file]

diff --git a/modules/input/README.multipress b/modules/input/README.multipress
deleted file mode 100644 (file)
index 6700150..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-*** Introduction
-
-This is a GTK+ input method which allows text entry via the multi-press method, 
-as on a mobile phone. When this has been installed, you can choose the "Multipress" 
-menu item from the "Input Methods" submenu when right-clicking in a GTK+ text entry 
-area. 
-
-For instance:
-- press a to get a, then wait 1 second for the character to be accepted.
-or
-- press dd to get e, then wait 1 second for the character to be accepted.
-or
-- press ad to get ad, then wait 1 second for the d character to be accepted.
-
-
-*** Configuration
-
-Edit the im-multipress.conf to define the keypresses needed to input particular characters.
-This file is in GKeyFile-format, and contains explanatory comments.
-
-
-*** Per-widget deactivation
-
-When the input method is active (either by choosing it from the context menu, or 
-by defining the default language as "*" in immultipress.c), the multipress 
-behaviour can be turned off for individual widgets, like so:
-
-  g_object_set_data(G_OBJECT(yourwidget), "multipress-passthrough-flag", GINT_TO_POINTER(1));
-
-
-For a C++ gtkmm project, you could make a convenience function to do this. For instance:
-
-  void multipress_deactivate(Gtk::Widget& widget)
-  {
-    static const Glib::Quark quark ("multipress-passthrough-flag");
-    widget.set_data(quark, GINT_TO_POINTER(1));
-  }
-
-*** Contact
-
-Please contact Openismus for assistance with this input method. You can email murrayc@openismus.com
-
-Copyright 2006-2007, Openismus GmbH
diff --git a/modules/input/gtkimcontextmultipress.c b/modules/input/gtkimcontextmultipress.c
deleted file mode 100644 (file)
index d3c52b0..0000000
+++ /dev/null
@@ -1,442 +0,0 @@
-/*
- * Copyright (c) 2006-2009 Openismus GmbH
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "config.h"
-
-#include "gtkimcontextmultipress.h"
-#include <string.h>
-#include <gtk/gtk.h>
-#include <gdk/gdkkeysyms.h>
-#include <gtk/gtkimmodule.h>
-
-#define AUTOMATIC_COMPOSE_TIMEOUT 1 /* seconds */
-#define CONFIGURATION_FILENAME MULTIPRESS_CONFDIR G_DIR_SEPARATOR_S "im-multipress.conf"
-
-/* This contains rows of characters that can be entered by pressing
- * a particular key repeatedly.  Each row has one key (such as GDK_a),
- * and an array of character strings, such as "a".
- */
-typedef struct
-{
-  gchar **characters; /* array of strings */
-  gsize n_characters; /* number of strings in the array */
-}
-KeySequence;
-
-static GObjectClass *im_context_multipress_parent_class = NULL;
-static GType         im_context_multipress_type = 0;
-
-static void im_context_multipress_class_init (GtkImContextMultipressClass *klass);
-static void im_context_multipress_init (GtkImContextMultipress *self);
-static void im_context_multipress_finalize (GObject *obj);
-
-static void load_config (GtkImContextMultipress *self);
-
-static gboolean vfunc_filter_keypress (GtkIMContext *context,
-                                       GdkEventKey  *event);
-static void vfunc_reset (GtkIMContext *context);
-static void vfunc_get_preedit_string (GtkIMContext   *context,
-                                      gchar         **str,
-                                      PangoAttrList **attrs,
-                                      gint           *cursor_pos);
-
-/* Notice that we have a *_register_type(GTypeModule*) function instead of a
- * *_get_type() function, because we must use g_type_module_register_type(),
- * providing the GTypeModule* that was provided to im_context_init(). That
- * is also why we are not using G_DEFINE_TYPE().
- */
-void
-gtk_im_context_multipress_register_type (GTypeModule* type_module)
-{
-  const GTypeInfo im_context_multipress_info =
-    {
-      sizeof (GtkImContextMultipressClass),
-      (GBaseInitFunc) NULL,
-      (GBaseFinalizeFunc) NULL,
-      (GClassInitFunc) &im_context_multipress_class_init,
-      NULL,
-      NULL,
-      sizeof (GtkImContextMultipress),
-      0,
-      (GInstanceInitFunc) &im_context_multipress_init,
-      0,
-    };
-
-  im_context_multipress_type =
-    g_type_module_register_type (type_module,
-                                 GTK_TYPE_IM_CONTEXT,
-                                 "GtkImContextMultipress",
-                                 &im_context_multipress_info, 0);
-}
-
-GType
-gtk_im_context_multipress_get_type (void)
-{
-  g_assert (im_context_multipress_type != 0);
-
-  return im_context_multipress_type;
-}
-
-static void
-key_sequence_free (gpointer value)
-{
-  KeySequence *seq = value;
-
-  if (seq != NULL)
-    {
-      g_strfreev (seq->characters);
-      g_slice_free (KeySequence, seq);
-    }
-}
-
-static void
-im_context_multipress_class_init (GtkImContextMultipressClass *klass)
-{
-  GtkIMContextClass *im_context_class;
-
-  /* Set this so we can use it later: */
-  im_context_multipress_parent_class = g_type_class_peek_parent (klass);
-
-  /* Specify our vfunc implementations: */
-  im_context_class = GTK_IM_CONTEXT_CLASS (klass);
-  im_context_class->filter_keypress = &vfunc_filter_keypress;
-  im_context_class->reset = &vfunc_reset;
-  im_context_class->get_preedit_string = &vfunc_get_preedit_string;
-
-  G_OBJECT_CLASS (klass)->finalize = &im_context_multipress_finalize;
-}
-
-static void
-im_context_multipress_init (GtkImContextMultipress *self)
-{
-  self->key_sequences = g_hash_table_new_full (&g_direct_hash, &g_direct_equal,
-                                               NULL, &key_sequence_free);
-  load_config (self);
-}
-
-static void
-im_context_multipress_finalize (GObject *obj)
-{
-  GtkImContextMultipress *self;
-
-  self = GTK_IM_CONTEXT_MULTIPRESS (obj);
-
-  /* Release the configuration data: */
-  if (self->key_sequences != NULL)
-    {
-      g_hash_table_destroy (self->key_sequences);
-      self->key_sequences = NULL;
-    }
-
-  (*im_context_multipress_parent_class->finalize) (obj);
-}
-
-
-GtkIMContext *
-gtk_im_context_multipress_new (void)
-{
-  return (GtkIMContext *)g_object_new (GTK_TYPE_IM_CONTEXT_MULTIPRESS, NULL);
-}
-
-static void
-cancel_automatic_timeout_commit (GtkImContextMultipress *multipress_context)
-{
-  if (multipress_context->timeout_id)
-    g_source_remove (multipress_context->timeout_id);
-  multipress_context->timeout_id = 0;
-}
-
-
-/* Clear the compose buffer, so we are ready to compose the next character.
- */
-static void
-clear_compose_buffer (GtkImContextMultipress *multipress_context)
-{
-  multipress_context->key_last_entered = 0;
-  multipress_context->compose_count = 0;
-
-  cancel_automatic_timeout_commit (multipress_context);
-
-  if (multipress_context->tentative_match)
-    {
-      multipress_context->tentative_match = NULL;
-      g_signal_emit_by_name (multipress_context, "preedit-changed");
-      g_signal_emit_by_name (multipress_context, "preedit-end");
-    }
-}
-
-/* Finish composing, provide the character, and clear our compose buffer.
- */
-static void
-accept_character (GtkImContextMultipress *multipress_context, const gchar *characters)
-{
-  /* Clear the compose buffer, so we are ready to compose the next character.
-   * Note that if we emit "preedit-changed" after "commit", there's a segfault/
-   * invalid-write with GtkTextView in gtk_text_layout_free_line_display(), when
-   * destroying a PangoLayout (this can also be avoided by not using any Pango
-   * attributes in get_preedit_string(). */
-  clear_compose_buffer (multipress_context);
-
-  /* Provide the character to GTK+ */
-  g_signal_emit_by_name (multipress_context, "commit", characters);
-}
-
-static gboolean
-on_timeout (gpointer data)
-{
-  GtkImContextMultipress *multipress_context;
-
-  multipress_context = GTK_IM_CONTEXT_MULTIPRESS (data);
-
-  /* A certain amount of time has passed, so we will assume that the user
-   * really wants the currently chosen character */
-  accept_character (multipress_context, multipress_context->tentative_match);
-
-  multipress_context->timeout_id = 0;
-
-  return G_SOURCE_REMOVE; /* don't call me again */
-}
-
-static gboolean
-vfunc_filter_keypress (GtkIMContext *context, GdkEventKey *event)
-{
-  GtkIMContextClass      *parent;
-  GtkImContextMultipress *multipress_context;
-
-  multipress_context = GTK_IM_CONTEXT_MULTIPRESS (context);
-
-  if (gdk_event_get_event_type ((GdkEvent *) event) == GDK_KEY_PRESS)
-    {
-      KeySequence *possible;
-      guint keyval;
-
-      gdk_event_get_keyval ((GdkEvent *) event, &keyval);
-
-      /* Check whether the current key is the same as previously entered, because
-       * if it is not then we should accept the previous one, and start a new
-       * character. */
-      if (multipress_context->compose_count > 0
-          && multipress_context->key_last_entered != keyval
-          && multipress_context->tentative_match != NULL)
-        {
-          /* Accept the previously chosen character.  This wipes
-           * the compose_count and key_last_entered. */
-          accept_character (multipress_context,
-                            multipress_context->tentative_match);
-        } 
-
-      /* Decide what character this key press would choose: */
-      possible = g_hash_table_lookup (multipress_context->key_sequences,
-                                      GUINT_TO_POINTER (keyval));
-      if (possible != NULL)
-        {
-          if (multipress_context->compose_count == 0)
-            g_signal_emit_by_name (multipress_context, "preedit-start");
-
-          /* Check whether we are at the end of a compose sequence, with no more
-           * possible characters.  Cycle back to the start if necessary. */
-          if (multipress_context->compose_count >= possible->n_characters)
-            multipress_context->compose_count = 0;
-
-          /* Store the last key pressed in the compose sequence. */
-          multipress_context->key_last_entered = keyval; 
-
-          /* Get the possible match for this number of presses of the key.
-           * compose_count starts at 1, so that 0 can mean not composing. */ 
-          multipress_context->tentative_match =
-            possible->characters[multipress_context->compose_count++];
-
-          /* Indicate the current possible character.  This will cause our
-           * vfunc_get_preedit_string() vfunc to be called, which will provide
-           * the current possible character for the user to see. */
-          g_signal_emit_by_name (multipress_context, "preedit-changed");
-
-          /* Cancel any outstanding timeout, so we can start the timer again: */
-          cancel_automatic_timeout_commit (multipress_context);
-
-          /* Create a timeout that will cause the currently chosen character to
-           * be committed, if nothing happens for a certain amount of time: */
-          multipress_context->timeout_id =
-            g_timeout_add_seconds (AUTOMATIC_COMPOSE_TIMEOUT,
-                                   &on_timeout, multipress_context);
-          g_source_set_name_by_id (multipress_context->timeout_id, "[gtk+] on_timeout");
-
-          return TRUE; /* key handled */
-        }
-      else
-        {
-          guint32 keyval_uchar;
-
-          /* Just accept all other keypresses directly, but commit the
-           * current preedit content first. */
-          if (multipress_context->compose_count > 0
-              && multipress_context->tentative_match != NULL)
-            {
-              accept_character (multipress_context,
-                                multipress_context->tentative_match);
-            }
-          keyval_uchar = gdk_keyval_to_unicode (keyval);
-
-          /* Convert to a string for accept_character(). */
-          if (keyval_uchar != 0)
-            {
-              /* max length of UTF-8 sequence = 6 + 1 for NUL termination */
-              gchar keyval_utf8[7];
-              gint  length;
-
-              length = g_unichar_to_utf8 (keyval_uchar, keyval_utf8);
-              keyval_utf8[length] = '\0';
-
-              accept_character (multipress_context, keyval_utf8);
-
-              return TRUE; /* key handled */
-            }
-        }
-    }
-
-  parent = (GtkIMContextClass *)im_context_multipress_parent_class;
-
-  /* The default implementation just returns FALSE, but it is generally
-   * a good idea to call the base class implementation: */
-  if (parent->filter_keypress)
-    return (*parent->filter_keypress) (context, event);
-
-  return FALSE;
-}
-
-static void
-vfunc_reset (GtkIMContext *context)
-{
-  clear_compose_buffer (GTK_IM_CONTEXT_MULTIPRESS (context));
-}
-
-static void
-vfunc_get_preedit_string (GtkIMContext   *context,
-                          gchar         **str,
-                          PangoAttrList **attrs,
-                          gint           *cursor_pos)
-{
-  gsize len_bytes = 0;
-  gsize len_utf8_chars = 0;
-
-  /* Show the user what character he will get if he accepts: */
-  if (str != NULL)
-    {
-      const gchar *match;
-
-      match = GTK_IM_CONTEXT_MULTIPRESS (context)->tentative_match;
-
-      if (match == NULL)
-        match = ""; /* *str must not be NUL */
-
-      len_bytes = strlen (match); /* byte count */
-      len_utf8_chars = g_utf8_strlen (match, len_bytes); /* character count */
-
-      *str = g_strndup (match, len_bytes);
-    }
-
-  /* Underline it, to show the user that he is in compose mode: */
-  if (attrs != NULL)
-    {
-      *attrs = pango_attr_list_new ();
-
-      if (len_bytes > 0)
-        {
-          PangoAttribute *attr;
-
-          attr = pango_attr_underline_new (PANGO_UNDERLINE_SINGLE);
-          attr->start_index = 0;
-          attr->end_index = len_bytes;
-          pango_attr_list_insert (*attrs, attr);
-        }
-    }
-
-  if (cursor_pos)
-    *cursor_pos = len_utf8_chars;
-}
-
-/* Open the configuration file and fill in the key_sequences hash table
- * with key/character-list pairs taken from the [keys] group of the file.
- */
-static void
-load_config (GtkImContextMultipress *self)
-{
-  GKeyFile *key_file;
-  GError   *error = NULL;
-  gchar   **keys;
-  gsize     n_keys = 0;
-  gsize     i;
-
-  key_file = g_key_file_new ();
-
-  if (!g_key_file_load_from_file (key_file, CONFIGURATION_FILENAME,
-                                  G_KEY_FILE_NONE, &error))
-    {
-      g_warning ("Error while trying to open the %s configuration file: %s",
-                 CONFIGURATION_FILENAME, error->message);
-      g_error_free (error);
-      g_key_file_free (key_file);
-      return;
-    }
-
-  keys = g_key_file_get_keys (key_file, "keys", &n_keys, &error);
-
-  if (error != NULL)
-    {
-      g_warning ("Error while trying to read the %s configuration file: %s",
-                 CONFIGURATION_FILENAME, error->message);
-      g_error_free (error);
-      g_key_file_free (key_file);
-      return;
-    }
-
-  for (i = 0; i < n_keys; ++i)
-    {
-      KeySequence *seq;
-      guint        keyval;
-
-      keyval = gdk_keyval_from_name (keys[i]);
-
-      if (keyval == GDK_KEY_VoidSymbol)
-        {
-          g_warning ("Error while trying to read the %s configuration file: "
-                     "invalid key name \"%s\"",
-                     CONFIGURATION_FILENAME, keys[i]);
-          continue;
-        }
-
-      seq = g_slice_new (KeySequence);
-      seq->characters = g_key_file_get_string_list (key_file, "keys", keys[i],
-                                                    &seq->n_characters, &error);
-      if (error != NULL)
-        {
-          g_warning ("Error while trying to read the %s configuration file: %s",
-                     CONFIGURATION_FILENAME, error->message);
-          g_error_free (error);
-          error = NULL;
-          g_slice_free (KeySequence, seq);
-          continue;
-        }
-
-      /* Ownership of the KeySequence is taken over by the hash table */
-      g_hash_table_insert (self->key_sequences, GUINT_TO_POINTER (keyval), seq);
-    }
-
-  g_strfreev (keys);
-  g_key_file_free (key_file);
-}
diff --git a/modules/input/gtkimcontextmultipress.h b/modules/input/gtkimcontextmultipress.h
deleted file mode 100644 (file)
index 9a45e85..0000000
+++ /dev/null
@@ -1,80 +0,0 @@
-/* Copyright (C) 2006 Openismus GmbH
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#ifndef __GTK_IM_CONTEXT_MULTIPRESS_H__
-#define __GTK_IM_CONTEXT_MULTIPRESS_H__
-
-#include <gtk/gtk.h>
-
-G_BEGIN_DECLS
-
-#define GTK_TYPE_IM_CONTEXT_MULTIPRESS            (gtk_im_context_multipress_get_type ())
-#define GTK_IM_CONTEXT_MULTIPRESS(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_IM_CONTEXT_MULTIPRESS, GtkImContextMultipress))
-#define GTK_IM_CONTEXT_MULTIPRESS_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_IM_CONTEXT_MULTIPRESS, GtkImContextMultipressClass))
-#define GTK_IS_IM_CONTEXT_MULTIPRESS(obj)         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_IM_CONTEXT_MULTIPRESS))
-#define GTK_IS_IM_CONTEXT_MULTIPRESS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_IM_CONTEXT_MULTIPRESS))
-#define GTK_IM_CONTEXT_MULTIPRESS_GET_CLASS(obj)  (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_IM_CONTEXT_MULTIPRESS, GtkImContextMultipressClass))
-
-typedef struct _GtkImContextMultipress GtkImContextMultipress;
-
-/* This input method allows multi-press character input, like that found on
- * mobile phones.
- *
- * This is based on GtkImContextSimple, which allows "compose" based on
- * sequences of characters.  But instead the character sequences are defined
- * by lists of characters for a key, so that repeated pressing of the same key
- * can cycle through the possible output characters, with automatic choosing
- * of the character after a time delay.
- */
-struct _GtkImContextMultipress
-{
-  /*< private >*/
-  GtkIMContext parent;
-
-  /* Sequence information, loaded from the configuration file: */
-  GHashTable* key_sequences;
-  gsize dummy; /* ABI-preserving placeholder */
-
-  /* The last character entered so far during a compose.
-   * If this is NULL then we are not composing yet.
-   */
-  guint key_last_entered;
-  
-  /* The position of the compose in the possible sequence.
-   *  For instance, this is 2 if aa has been pressed to show b (from abc0).
-   */
-  guint compose_count; 
-  guint timeout_id;
-
-  /* The character(s) that will be used if it the current character(s) is accepted: */
-  const gchar *tentative_match;
-};
-
-
-typedef struct _GtkImContextMultipressClass  GtkImContextMultipressClass;
-
-struct _GtkImContextMultipressClass
-{
-  GtkIMContextClass parent_class;
-};
-
-void gtk_im_context_multipress_register_type (GTypeModule* type_module);
-GType gtk_im_context_multipress_get_type (void);
-GtkIMContext *gtk_im_context_multipress_new (void);
-
-G_END_DECLS
-
-#endif /* __GTK_IM_CONTEXT_MULTIPRESS_H__ */
diff --git a/modules/input/gtkimcontextthai.c b/modules/input/gtkimcontextthai.c
deleted file mode 100644 (file)
index 3c8aa75..0000000
+++ /dev/null
@@ -1,347 +0,0 @@
-/* GTK - The GIMP Toolkit
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library. If not, see <http://www.gnu.org/licenses/>.
- *
- * Author:  Theppitak Karoonboonyanan <thep@linux.thai.net>
- *
- */
-
-#include <string.h>
-
-#include <gdk/gdkkeysyms.h>
-#include "gtkimcontextthai.h"
-#include "thai-charprop.h"
-
-static void     gtk_im_context_thai_class_init          (GtkIMContextThaiClass *class);
-static void     gtk_im_context_thai_init                (GtkIMContextThai      *im_context_thai);
-static gboolean gtk_im_context_thai_filter_keypress     (GtkIMContext          *context,
-                                                        GdkEventKey           *key);
-
-#ifndef GTK_IM_CONTEXT_THAI_NO_FALLBACK
-static void     forget_previous_chars (GtkIMContextThai *context_thai);
-static void     remember_previous_char (GtkIMContextThai *context_thai,
-                                        gunichar new_char);
-#endif /* !GTK_IM_CONTEXT_THAI_NO_FALLBACK */
-
-static GObjectClass *parent_class;
-
-GType gtk_type_im_context_thai = 0;
-
-void
-gtk_im_context_thai_register_type (GTypeModule *type_module)
-{
-  const GTypeInfo im_context_thai_info =
-  {
-    sizeof (GtkIMContextThaiClass),
-    (GBaseInitFunc) NULL,
-    (GBaseFinalizeFunc) NULL,
-    (GClassInitFunc) gtk_im_context_thai_class_init,
-    NULL,           /* class_finalize */    
-    NULL,           /* class_data */
-    sizeof (GtkIMContextThai),
-    0,
-    (GInstanceInitFunc) gtk_im_context_thai_init,
-  };
-
-  gtk_type_im_context_thai = 
-    g_type_module_register_type (type_module,
-                                 GTK_TYPE_IM_CONTEXT,
-                                 "GtkIMContextThai",
-                                 &im_context_thai_info, 0);
-}
-
-static void
-gtk_im_context_thai_class_init (GtkIMContextThaiClass *class)
-{
-  GtkIMContextClass *im_context_class = GTK_IM_CONTEXT_CLASS (class);
-
-  parent_class = g_type_class_peek_parent (class);
-
-  im_context_class->filter_keypress = gtk_im_context_thai_filter_keypress;
-}
-
-static void
-gtk_im_context_thai_init (GtkIMContextThai *context_thai)
-{
-#ifndef GTK_IM_CONTEXT_THAI_NO_FALLBACK
-  forget_previous_chars (context_thai);
-#endif /* !GTK_IM_CONTEXT_THAI_NO_FALLBACK */
-  context_thai->isc_mode = ISC_BASICCHECK;
-}
-
-GtkIMContext *
-gtk_im_context_thai_new (void)
-{
-  GtkIMContextThai *result;
-
-  result = GTK_IM_CONTEXT_THAI (g_object_new (GTK_TYPE_IM_CONTEXT_THAI, NULL));
-
-  return GTK_IM_CONTEXT (result);
-}
-
-GtkIMContextThaiISCMode
-gtk_im_context_thai_get_isc_mode (GtkIMContextThai *context_thai)
-{
-  return context_thai->isc_mode;
-}
-
-GtkIMContextThaiISCMode
-gtk_im_context_thai_set_isc_mode (GtkIMContextThai *context_thai,
-                                  GtkIMContextThaiISCMode mode)
-{
-  GtkIMContextThaiISCMode prev_mode = context_thai->isc_mode;
-  context_thai->isc_mode = mode;
-  return prev_mode;
-}
-
-static gboolean
-is_context_lost_key(guint keyval)
-{
-  return ((keyval & 0xFF00) == 0xFF00) &&
-         (keyval == GDK_KEY_BackSpace ||
-          keyval == GDK_KEY_Tab ||
-          keyval == GDK_KEY_Linefeed ||
-          keyval == GDK_KEY_Clear ||
-          keyval == GDK_KEY_Return ||
-          keyval == GDK_KEY_Pause ||
-          keyval == GDK_KEY_Scroll_Lock ||
-          keyval == GDK_KEY_Sys_Req ||
-          keyval == GDK_KEY_Escape ||
-          keyval == GDK_KEY_Delete ||
-          (GDK_KEY_Home <= keyval && keyval <= GDK_KEY_Begin) || /* IsCursorkey */
-          (GDK_KEY_KP_Space <= keyval && keyval <= GDK_KEY_KP_Delete) || /* IsKeypadKey, non-chars only */
-          (GDK_KEY_Select <= keyval && keyval <= GDK_KEY_Break) || /* IsMiscFunctionKey */
-          (GDK_KEY_F1 <= keyval && keyval <= GDK_KEY_F35)); /* IsFunctionKey */
-}
-
-static gboolean
-is_context_intact_key(guint keyval)
-{
-  return (((keyval & 0xFF00) == 0xFF00) &&
-           ((GDK_KEY_Shift_L <= keyval && keyval <= GDK_KEY_Hyper_R) || /* IsModifierKey */
-            (keyval == GDK_KEY_Mode_switch) ||
-            (keyval == GDK_KEY_Num_Lock))) ||
-         (((keyval & 0xFE00) == 0xFE00) &&
-          (GDK_KEY_ISO_Lock <= keyval && keyval <= GDK_KEY_ISO_Last_Group_Lock));
-}
-
-static gboolean
-thai_is_accept (gunichar new_char, gunichar prev_char, gint isc_mode)
-{
-  switch (isc_mode)
-    {
-    case ISC_PASSTHROUGH:
-      return TRUE;
-
-    case ISC_BASICCHECK:
-      return TAC_compose_input (prev_char, new_char) != 'R';
-
-    case ISC_STRICT:
-      {
-        int op = TAC_compose_input (prev_char, new_char);
-        return op != 'R' && op != 'S';
-      }
-
-    default:
-      return FALSE;
-    }
-}
-
-#define thai_is_composible(n,p)  (TAC_compose_input ((p), (n)) == 'C')
-
-#ifndef GTK_IM_CONTEXT_THAI_NO_FALLBACK
-static void
-forget_previous_chars (GtkIMContextThai *context_thai)
-{
-  memset (context_thai->char_buff, 0, sizeof (context_thai->char_buff));
-}
-
-static void
-remember_previous_char (GtkIMContextThai *context_thai, gunichar new_char)
-{
-  memmove (context_thai->char_buff + 1, context_thai->char_buff,
-           (GTK_IM_CONTEXT_THAI_BUFF_SIZE - 1) * sizeof (context_thai->char_buff[0]));
-  context_thai->char_buff[0] = new_char;
-}
-#endif /* !GTK_IM_CONTEXT_THAI_NO_FALLBACK */
-
-static gunichar
-get_previous_char (GtkIMContextThai *context_thai, gint offset)
-{
-  gchar *surrounding;
-  gint  cursor_index;
-
-  if (gtk_im_context_get_surrounding ((GtkIMContext *)context_thai,
-                                      &surrounding, &cursor_index))
-    {
-      gunichar prev_char;
-      gchar *p, *q;
-
-      prev_char = 0;
-      p = surrounding + cursor_index;
-      for (q = p; offset < 0 && q > surrounding; ++offset)
-        q = g_utf8_prev_char (q);
-      if (offset == 0)
-        {
-          prev_char = g_utf8_get_char_validated (q, p - q);
-          if (prev_char == (gunichar)-1 || prev_char == (gunichar)-2)
-            prev_char = 0;
-        }
-      g_free (surrounding);
-      return prev_char;
-    }
-#ifndef GTK_IM_CONTEXT_THAI_NO_FALLBACK
-  else
-    {
-      offset = -offset - 1;
-      if (0 <= offset && offset < GTK_IM_CONTEXT_THAI_BUFF_SIZE)
-        return context_thai->char_buff[offset];
-    }
-#endif /* !GTK_IM_CONTEXT_THAI_NO_FALLBACK */
-
-    return 0;
-}
-
-static gboolean
-gtk_im_context_thai_commit_chars (GtkIMContextThai *context_thai,
-                                  gunichar *s, gsize len)
-{
-  gchar *utf8;
-
-  utf8 = g_ucs4_to_utf8 (s, len, NULL, NULL, NULL);
-  if (!utf8)
-    return FALSE;
-
-  g_signal_emit_by_name (context_thai, "commit", utf8);
-
-  g_free (utf8);
-  return TRUE;
-}
-
-static gboolean
-accept_input (GtkIMContextThai *context_thai, gunichar new_char)
-{
-#ifndef GTK_IM_CONTEXT_THAI_NO_FALLBACK
-  remember_previous_char (context_thai, new_char);
-#endif /* !GTK_IM_CONTEXT_THAI_NO_FALLBACK */
-
-  return gtk_im_context_thai_commit_chars (context_thai, &new_char, 1);
-}
-
-static gboolean
-reorder_input (GtkIMContextThai *context_thai,
-               gunichar prev_char, gunichar new_char)
-{
-  gunichar buf[2];
-
-  if (!gtk_im_context_delete_surrounding (GTK_IM_CONTEXT (context_thai), -1, 1))
-    return FALSE;
-
-#ifndef GTK_IM_CONTEXT_THAI_NO_FALLBACK
-  forget_previous_chars (context_thai);
-  remember_previous_char (context_thai, new_char);
-  remember_previous_char (context_thai, prev_char);
-#endif /* !GTK_IM_CONTEXT_THAI_NO_FALLBACK */
-
-  buf[0] = new_char;
-  buf[1] = prev_char;
-  return gtk_im_context_thai_commit_chars (context_thai, buf, 2);
-}
-
-static gboolean
-replace_input (GtkIMContextThai *context_thai, gunichar new_char)
-{
-  if (!gtk_im_context_delete_surrounding (GTK_IM_CONTEXT (context_thai), -1, 1))
-    return FALSE;
-
-#ifndef GTK_IM_CONTEXT_THAI_NO_FALLBACK
-  forget_previous_chars (context_thai);
-  remember_previous_char (context_thai, new_char);
-#endif /* !GTK_IM_CONTEXT_THAI_NO_FALLBACK */
-
-  return gtk_im_context_thai_commit_chars (context_thai, &new_char, 1);
-}
-
-static gboolean
-gtk_im_context_thai_filter_keypress (GtkIMContext *context,
-                                     GdkEventKey  *event)
-{
-  GtkIMContextThai *context_thai = GTK_IM_CONTEXT_THAI (context);
-  gunichar prev_char, new_char;
-  gboolean is_reject;
-  GtkIMContextThaiISCMode isc_mode;
-  GdkModifierType state;
-  guint keyval;
-
-  if (gdk_event_get_event_type ((GdkEvent *) event) != GDK_KEY_PRESS ||
-      !gdk_event_get_state ((GdkEvent *) event, &state) ||
-      !gdk_event_get_keyval ((GdkEvent *) event, &keyval))
-    return FALSE;
-
-  if (state & (GDK_MODIFIER_MASK
-               & ~(GDK_SHIFT_MASK | GDK_LOCK_MASK | GDK_MOD2_MASK)) ||
-      is_context_lost_key (keyval))
-    {
-#ifndef GTK_IM_CONTEXT_THAI_NO_FALLBACK
-      forget_previous_chars (context_thai);
-#endif /* !GTK_IM_CONTEXT_THAI_NO_FALLBACK */
-      return FALSE;
-    }
-  if (keyval == 0 || is_context_intact_key (keyval))
-    {
-      return FALSE;
-    }
-
-  prev_char = get_previous_char (context_thai, -1);
-  if (!prev_char)
-    prev_char = ' ';
-  new_char = gdk_keyval_to_unicode (keyval);
-  is_reject = TRUE;
-  isc_mode = gtk_im_context_thai_get_isc_mode (context_thai);
-  if (thai_is_accept (new_char, prev_char, isc_mode))
-    {
-      accept_input (context_thai, new_char);
-      is_reject = FALSE;
-    }
-  else
-    {
-      gunichar context_char;
-
-      /* rejected, trying to correct */
-      context_char = get_previous_char (context_thai, -2);
-      if (context_char)
-        {
-          if (thai_is_composible (new_char, context_char))
-            {
-              if (thai_is_composible (prev_char, new_char))
-                is_reject = !reorder_input (context_thai, prev_char, new_char);
-              else if (thai_is_composible (prev_char, context_char))
-                is_reject = !replace_input (context_thai, new_char);
-              else if ((TAC_char_class (prev_char) == FV1
-                        || TAC_char_class (prev_char) == AM)
-                       && TAC_char_class (new_char) == TONE)
-                is_reject = !reorder_input (context_thai, prev_char, new_char);
-            }
-         else if (thai_is_accept (new_char, context_char, isc_mode))
-            is_reject = !replace_input (context_thai, new_char);
-        }
-    }
-  if (is_reject)
-    {
-      /* reject character */
-      gdk_display_beep (gdk_event_get_display ((GdkEvent*)event));
-    }
-  return TRUE;
-}
-
diff --git a/modules/input/gtkimcontextthai.h b/modules/input/gtkimcontextthai.h
deleted file mode 100644 (file)
index fae8d57..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-/* GTK - The GIMP Toolkit
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library. If not, see <http://www.gnu.org/licenses/>.
- *
- * Author:  Theppitak Karoonboonyanan <thep@linux.thai.net>
- *
- */
-
-#ifndef __GTK_IM_CONTEXT_THAI_H__
-#define __GTK_IM_CONTEXT_THAI_H__
-
-#include <gtk/gtk.h>
-
-G_BEGIN_DECLS
-
-extern GType gtk_type_im_context_thai;
-
-#define GTK_TYPE_IM_CONTEXT_THAI            (gtk_type_im_context_thai)
-#define GTK_IM_CONTEXT_THAI(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_IM_CONTEXT_THAI, GtkIMContextThai))
-#define GTK_IM_CONTEXT_THAI_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_IM_CONTEXT_THAI, GtkIMContextThaiClass))
-#define GTK_IS_IM_CONTEXT_THAI(obj)         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_IM_CONTEXT_THAI))
-#define GTK_IS_IM_CONTEXT_THAI_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_IM_CONTEXT_THAI))
-#define GTK_IM_CONTEXT_THAI_GET_CLASS(obj)  (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_IM_CONTEXT_THAI, GtkIMContextThaiClass))
-
-
-typedef struct _GtkIMContextThai       GtkIMContextThai;
-typedef struct _GtkIMContextThaiClass  GtkIMContextThaiClass;
-
-typedef enum
-{
-  ISC_PASSTHROUGH,
-  ISC_BASICCHECK,
-  ISC_STRICT
-} GtkIMContextThaiISCMode;
-#define GTK_IM_CONTEXT_THAI_BUFF_SIZE 2
-
-struct _GtkIMContextThai
-{
-  GtkIMContext object;
-
-#ifndef GTK_IM_CONTEXT_THAI_NO_FALLBACK
-  gunichar                char_buff[GTK_IM_CONTEXT_THAI_BUFF_SIZE];
-#endif /* !GTK_IM_CONTEXT_THAI_NO_FALLBACK */
-  GtkIMContextThaiISCMode isc_mode;
-};
-
-struct _GtkIMContextThaiClass
-{
-  GtkIMContextClass parent_class;
-};
-
-void gtk_im_context_thai_register_type (GTypeModule *type_module);
-GtkIMContext *gtk_im_context_thai_new (void);
-
-GtkIMContextThaiISCMode
-  gtk_im_context_thai_get_isc_mode (GtkIMContextThai *context_thai);
-
-GtkIMContextThaiISCMode
-  gtk_im_context_thai_set_isc_mode (GtkIMContextThai *context_thai,
-                                    GtkIMContextThaiISCMode mode);
-
-G_END_DECLS
-
-#endif /* __GTK_IM_CONTEXT_THAI_H__ */
diff --git a/modules/input/im-multipress.conf b/modules/input/im-multipress.conf
deleted file mode 100644 (file)
index d6c8129..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-# Example configuration file for the GTK+ Multipress Input Method
-# Authored by Openismus GmbH, 2009.
-#
-# This file follows the GKeyFile format.  On the left of the equal sign goes
-# the key that you press repeatedly to iterate through the text items listed
-# on the right-hand side.  The list items are separated by semicolons ";" and
-# consist of one or more characters each.  The backslash "\" is used to escape
-# characters; for instance "\;" for a literal semicolon.
-#
-# The example configuration below imitates the behavior of a standard mobile
-# phone by a major manufacturer, with German language setting.
-[keys]
-KP_1 = .;,;?;!;';";1;-;(;);@;/;:;_
-KP_2 = a;b;c;2;ä;à;á;ã;â;Ã¥;æ;ç
-KP_3 = d;e;f;3;è;é;ë;ê;ð
-KP_4 = g;h;i;4;ì;í;î;ï
-KP_5 = j;k;l;5;£
-KP_6 = m;n;o;6;ö;ò;ó;ô;õ;ø;ñ
-KP_7 = p;q;r;s;7;ß;$
-KP_8 = t;u;v;8;ü;ù;ú;û
-KP_9 = w;x;y;z;9;ý;þ
-KP_0 = \s;0
diff --git a/modules/input/imam-et.c b/modules/input/imam-et.c
deleted file mode 100644 (file)
index f3d7628..0000000
+++ /dev/null
@@ -1,490 +0,0 @@
-/* GTK - The GIMP Toolkit
- * Copyright (C) 2000 Red Hat Software
- * Copyright (C) 2000 SuSE Linux Ltd
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library. If not, see <http://www.gnu.org/licenses/>.
- *
- * Original author: Owen Taylor <otaylor@redhat.com>
- * 
- * Modified for Inuktitut - Robert Brady <robert@suse.co.uk>
- * 
- * Modified for Amharic - Daniel Yacob <locales@geez.org>
- *
- */
-
-#include "config.h"
-#include <stdio.h>
-#include <string.h>
-
-#include <gtk/gtk.h>
-#include <gdk/gdkkeysyms.h>
-
-#include "gtk/gtkimmodule.h"
-#include "gtk/gtkintl.h"
-
-GType type_am_et_translit = 0;
-
-static void am_et_class_init (GtkIMContextSimpleClass *class);
-static void am_et_init (GtkIMContextSimple *im_context);
-
-static void
-am_et_register_type (GTypeModule *module)
-{
-  const GTypeInfo object_info =
-  {
-    sizeof (GtkIMContextSimpleClass),
-    (GBaseInitFunc) NULL,
-    (GBaseFinalizeFunc) NULL,
-    (GClassInitFunc) am_et_class_init,
-    NULL,           /* class_finalize */
-    NULL,           /* class_data */
-    sizeof (GtkIMContextSimple),
-    0,
-    (GInstanceInitFunc) am_et_init,
-  };
-
-  type_am_et_translit = 
-    g_type_module_register_type (module,
-                                GTK_TYPE_IM_CONTEXT_SIMPLE,
-                                "GtkIMContextAmharicEthiopia",
-                                &object_info, 0);
-}
-
-#define SYL(a,b) \
-  a,  0,  0, 0, 0, 0, b+5, \
-  a, 'A', 0, 0, 0, 0, b+3, \
-  a, 'E', 0, 0, 0, 0, b+4, \
-  a, 'I', 0, 0, 0, 0, b+2, \
-  a, 'O', 0, 0, 0, 0, b+6, \
-  a, 'U', 0, 0, 0, 0, b+1, \
-  a, 'a', 0, 0, 0, 0, b+3, \
-  a, 'e', 0, 0, 0, 0, b, \
-  a, 'e', 'e', 0, 0, 0, b+4, \
-  a, 'i', 0, 0, 0, 0, b+2, \
-  a, 'o', 0, 0, 0, 0, b+6, \
-  a, 'u', 0, 0, 0, 0, b+1,
-
-#define SYLW1(a,b) \
-  a,  0,  0, 0, 0, 0, b+5, \
-  a, 'A', 0, 0, 0, 0, b+3, \
-  a, 'E', 0, 0, 0, 0, b+4, \
-  a, 'I', 0, 0, 0, 0, b+2, \
-  a, 'O', 0, 0, 0, 0, b+6, \
-  a, 'U', 0, 0, 0, 0, b+1, \
-  a, 'W', 0, 0, 0, 0, b+7, \
-  a, 'W', 'A', 0, 0, 0, b+7, \
-  a, 'W', 'a', 0, 0, 0, b+7,
-#define SYLW2(a,b) \
-  a, 'a', 0, 0, 0, 0, b+3, \
-  a, 'e', 0, 0, 0, 0, b, \
-  a, 'e', 'e', 0, 0, 0, b+4, \
-  a, 'i', 0, 0, 0, 0, b+2, \
-  a, 'o', 0, 0, 0, 0, b+6, \
-  a, 'u', 0, 0, 0, 0, b+1, \
-  a, 'w', 'w',   0, 0, 0, b+7, \
-  a, 'w', 'w', 'a', 0, 0, b+7,
-
-#define SYLW(a,b) \
-  SYLW1(a,b)\
-  SYLW2(a,b)
-
-#define SYLWW(a,b) \
-  a,  0,  0, 0, 0, 0, b+5, \
-  a, 'A', 0, 0, 0, 0, b+3, \
-  a, 'E', 0, 0, 0, 0, b+4, \
-  a, 'I', 0, 0, 0, 0, b+2, \
-  a, 'O', 0, 0, 0, 0, b+6, \
-  a, 'O', 'O', 0, 0, 0, b+8, \
-  a, 'O', 'o', 0, 0, 0, b+8, \
-  a, 'U', 0, 0, 0, 0, b+1, \
-  a, 'W', 0, 0, 0, 0, b+11, \
-  a, 'W', '\'', 0, 0, 0, b+13, \
-  a, 'W', 'A', 0, 0, 0, b+11, \
-  a, 'W', 'E', 0, 0, 0, b+12, \
-  a, 'W', 'I', 0, 0, 0, b+10, \
-  a, 'W', 'U', 0, 0, 0, b+13, \
-  a, 'W', 'a', 0, 0, 0, b+11, \
-  a, 'W', 'e', 0, 0, 0, b+8, \
-  a, 'W', 'e', 'e', 0, 0, b+12, \
-  a, 'W', 'i', 0, 0, 0, b+10, \
-  a, 'W', 'u', 0, 0, 0, b+13, \
-  a, 'a', 0, 0, 0, 0, b+3, \
-  a, 'e', 0, 0, 0, 0, b, \
-  a, 'e', 'e', 0, 0, 0, b+4, \
-  a, 'i', 0, 0, 0, 0, b+2, \
-  a, 'o', 0, 0, 0, 0, b+6, \
-  a, 'o', 'o', 0, 0, 0, b+8, \
-  a, 'u', 0, 0, 0, 0, b+1, \
-  a, 'w', 'w', 0, 0, 0, b+11, \
-  a, 'w', 'w', '\'', 0, 0, b+13, \
-  a, 'w', 'w', 'E', 0, 0, b+12, \
-  a, 'w', 'w', 'a', 0, 0, b+11, \
-  a, 'w', 'w', 'e', 0, 0, b+8, \
-  a, 'w', 'w', 'e', 'e', 0, b+12, \
-  a, 'w', 'w', 'i', 0, 0, b+10, \
-  a, 'w', 'w', 'u', 0, 0, b+13,
-
-static guint16 am_et_compose_seqs[] = {
-  /* do punctuation and numerals here */
-
-  '\'',   0, 0, 0, 0, 0, GDK_KEY_dead_grave,  /* hopefully this has no side effects */
-  '\'', '\'', 0, 0, 0, 0, GDK_KEY_apostrophe,
-  '\'', '1', 0, 0, 0, 0, 0x1369,
-  '\'', '1', '0', 0, 0, 0, 0x1372,
-  '\'', '1', '0', '0', 0, 0, 0x137b,
-  '\'', '1', '0', 'k', 0, 0, 0x137c,
-  /* '\'', '1', '0', '0', '0',  0, 0x137b,
-  '\'', '1', '0', '0', '0', '0', 0, 0x137c, */
-  '\'', '2', 0, 0, 0, 0, 0x136a,
-  '\'', '2', '0', 0, 0, 0, 0x1373,
-  '\'', '3', 0, 0, 0, 0, 0x136b,
-  '\'', '3', '0', 0, 0, 0, 0x1374,
-  '\'', '4', 0, 0, 0, 0, 0x136c,
-  '\'', '4', '0', 0, 0, 0, 0x1375,
-  '\'', '5', 0, 0, 0, 0, 0x136d,
-  '\'', '5', '0', 0, 0, 0, 0x1376,
-  '\'', '6', 0, 0, 0, 0, 0x136e,
-  '\'', '6', '0', 0, 0, 0, 0x1377,
-  '\'', '7', 0, 0, 0, 0, 0x136f,
-  '\'', '7', '0', 0, 0, 0, 0x1378,
-  '\'', '8', 0, 0, 0, 0, 0x1370,
-  '\'', '8', '0', 0, 0, 0, 0x1379,
-  '\'', '9', 0, 0, 0, 0, 0x1371,
-  '\'', '9', '0', 0, 0, 0, 0x137a,
-  ',',  0,  0, 0, 0, 0, 0x1363,
-  ',',  ',',  0, 0, 0, 0, ',',
-  '-',  0,  0, 0, 0, 0, '-',
-  '-',  ':',  0, 0, 0, 0, 0x1365,
-  ':',  0,  0, 0, 0, 0, 0x1361,
-  ':',  '-',  0, 0, 0, 0, 0x1366,
-  ':',  ':',  0, 0, 0, 0, 0x1362,
-  ':',  ':',  ':', 0, 0, 0, ':',
-  ':',  '|',  ':', 0, 0, 0, 0x1368,
-  ';',  0,  0, 0, 0, 0, 0x1364,
-  ';',  ';',  0, 0, 0, 0, ';',
-  '<',  0,  0, 0, 0, 0, '<',
-  '<',  '<',  0, 0, 0, 0, 0x00AB,
-  '>',  0,  0, 0, 0, 0, '>',
-  '>',  '>',  0, 0, 0, 0, 0x00BB,
-  '?',  0,  0, 0, 0, 0, '?',
-  '?',  '?',  0, 0, 0, 0, 0x1367,
-  'A',  0,  0,  0,  0, 0, 0x12A3,
-  'A','A',  0,  0,  0, 0, 0x12D3,
-  SYLW('B', 0x1260)
-  SYLW('C', 0x1328)
-  SYLW('D', 0x12f8)
-  'E',  0,  0,  0,  0, 0, 0x12A4,
-  'E','E',  0,  0,  0, 0, 0x12D4,
-  SYLW1('F', 0x1348)
-  'F', 'Y',   0,  0,  0, 0, 0x135A,
-  'F', 'Y', 'A',  0,  0, 0, 0x135A,
-  'F', 'Y', 'a',  0,  0, 0, 0x135A,
-  SYLW2('F', 0x1348)
-  SYL('G', 0x1318)
-  SYLW('H', 0x1210)
-  'I',  0,  0,  0,  0, 0, 0x12A5,
-  'I','A',  0,  0,  0, 0, 0x12A3,
-  'I','E',  0,  0,  0, 0, 0x12A4,
-  'I','I',  0,  0,  0, 0, 0x12D5,
-  'I','I','E',  0,  0, 0, 0x12D4,
-  'I','I','a',  0,  0, 0, 0x12D3,
-  'I','I','e',  0,  0, 0, 0x12D0,
-  'I','I','i',  0,  0, 0, 0x12D2,
-  'I','I','o',  0,  0, 0, 0x12D6,
-  'I','I','u',  0,  0, 0, 0x12D1,
-  'I','O',  0,  0,  0, 0, 0x12A6,
-  'I','U',  0,  0,  0, 0, 0x12A1,
-  'I','W',  0,  0,  0, 0, 0x12A7,
-  'I','a',  0,  0,  0, 0, 0x12A3,
-  'I','e',  0,  0,  0, 0, 0x12A0,
-  'I','i',  0,  0,  0, 0, 0x12A2,
-  'I','o',  0,  0,  0, 0, 0x12A6,
-  'I','u',  0,  0,  0, 0, 0x12A1,
-  SYLWW('K', 0x12b8)
-  SYLW('L', 0x1208)
-  SYLW1('M', 0x1218)
-  'M', 'Y',   0,  0,  0, 0, 0x1359,
-  'M', 'Y', 'A',  0,  0, 0, 0x1359,
-  'M', 'Y', 'a',  0,  0, 0, 0x1359,
-  SYLW2('M', 0x1218)
-  SYLW('N', 0x1298)
-  'O',  0,  0,  0,  0, 0, 0x12A6,
-  'O','O',  0,  0,  0, 0, 0x12D6,
-  SYLW('P', 0x1330)
-  SYLWW('Q', 0x1250) 
-  SYLW1('R', 0x1228)
-  'R', 'Y',   0,  0,  0, 0, 0x1358,
-  'R', 'Y', 'A',  0,  0, 0, 0x1358,
-  'R', 'Y', 'a',  0,  0, 0, 0x1358,
-  SYLW2('R', 0x1228)
-  'S',  0,  0, 0, 0, 0, 0x1338+5,
-  'S', 'A', 0, 0, 0, 0, 0x1338+3,
-  'S', 'E', 0, 0, 0, 0, 0x1338+4,
-  'S', 'I', 0, 0, 0, 0, 0x1338+2,
-  'S', 'O', 0, 0, 0, 0, 0x1338+6,
-  'S', 'S', 0, 0, 0, 0, 0x1340+5,
-  'S', 'S', 'A', 0, 0, 0, 0x1340+3,
-  'S', 'S', 'E', 0, 0, 0, 0x1340+4,
-  'S', 'S', 'I', 0, 0, 0, 0x1340+2,
-  'S', 'S', 'O', 0, 0, 0, 0x1340+6,
-  'S', 'S', 'U', 0, 0, 0, 0x1340+1,
-  'S', 'S', 'a', 0, 0, 0, 0x1340+3,
-  'S', 'S', 'e', 0, 0, 0, 0x1340,
-  'S', 'S', 'e', 'e', 0, 0, 0x1340+4,
-  'S', 'S', 'i', 0, 0, 0, 0x1340+2,
-  'S', 'S', 'o', 0, 0, 0, 0x1340+6,
-  'S', 'S', 'u', 0, 0, 0, 0x1340+1,
-  'S', 'U', 0, 0, 0, 0, 0x1338+1,
-  'S', 'W', 0, 0, 0, 0, 0x1338+7,
-  'S', 'W', 'A', 0, 0, 0, 0x1338+7,
-  'S', 'W', 'a', 0, 0, 0, 0x1338+7,
-  'S', 'a', 0, 0, 0, 0, 0x1338+3,
-  'S', 'e', 0, 0, 0, 0, 0x1338,
-  'S', 'e', 'e', 0, 0, 0, 0x1338+4,
-  'S', 'i', 0, 0, 0, 0, 0x1338+2,
-  'S', 'o', 0, 0, 0, 0, 0x1338+6,
-  'S', 'u', 0, 0, 0, 0, 0x1338+1,
-  'S', 'w', 'w',   0, 0, 0, 0x1338+7,
-  'S', 'w', 'w', 'a', 0, 0, 0x1338+7,
-  SYLW('T', 0x1320)
-  'U',  0,  0,  0,  0, 0, 0x12A1,
-  'U','U',  0,  0,  0, 0, 0x12D1,
-  SYLW('V', 0x1268)
-  SYL('W', 0x12c8)
-  SYLW('X', 0x1238)
-  SYL('Y', 0x12e8)
-  SYLW('Z', 0x12e0)
-
-  /* much, much work to be done for lone vowels */
-  'a',  0,  0,  0,  0, 0, 0x12A0,
-  'a','a',  0,  0,  0, 0, 0x12D3,
-  'a','a','a',  0,  0, 0, 0x12D0,
-  'a','a','a','a',  0, 0, 0x12A3,
-  'a','a','a','a','a', 0, 0x12A0,
-  SYLW('b', 0x1260)
-  SYLW('c', 0x1278)
-  SYLW('d', 0x12f0)
-  'e',  0,  0,  0,  0, 0, 0x12A5,
-  'e','A',  0,  0,  0, 0, 0x12A3,
-  'e','E',  0,  0,  0, 0, 0x12A4,
-  'e','I',  0,  0,  0, 0, 0x12A2,
-  'e','O',  0,  0,  0, 0, 0x12A6,
-  'e','U',  0,  0,  0, 0, 0x12A1,
-  'e','W',  0,  0,  0, 0, 0x12A7,
-  'e','a',  0,  0,  0, 0, 0x12D0,
-  'e','e',  0,  0,  0, 0, 0x12D5,
-  'e','e','E',  0,  0, 0, 0x12D4,
-  'e','e','a',  0,  0, 0, 0x12D3,
-  'e','e','e',  0,  0, 0, 0x12D0,
-  'e','e','i',  0,  0, 0, 0x12D2,
-  'e','e','o',  0,  0, 0, 0x12D6,
-  'e','e','u',  0,  0, 0, 0x12D1,
-  'e','i',  0,  0,  0, 0, 0x12A2,
-  'e','o',  0,  0,  0, 0, 0x12A6,
-  'e','u',  0,  0,  0, 0, 0x12A1,
-  SYLW1('f', 0x1348)
-  'f', 'Y',   0,  0,  0, 0, 0x135A,
-  'f', 'Y', 'A',  0,  0, 0, 0x135A,
-  'f', 'Y', 'a',  0,  0, 0, 0x135A,
-  SYLW2('f', 0x1348)
-  SYLWW('g', 0x1308)
-  'h',  0,  0, 0, 0, 0, 0x1200+5,
-  'h', 'A', 0, 0, 0, 0, 0x1200+3,
-  'h', 'E', 0, 0, 0, 0, 0x1200+4,
-  'h', 'I', 0, 0, 0, 0, 0x1200+2,
-  'h', 'O', 0, 0, 0, 0, 0x1200+6,
-  'h', 'U', 0, 0, 0, 0, 0x1200+1,
-  'h', 'W', 0, 0, 0, 0, 0x1280+11,
-  'h', 'W', '\'', 0, 0, 0, 0x1280+13,
-  'h', 'W', 'A', 0, 0, 0, 0x1280+11,
-  'h', 'W', 'E', 0, 0, 0, 0x1280+12,
-  'h', 'W', 'I', 0, 0, 0, 0x1280+10,
-  'h', 'W', 'U', 0, 0, 0, 0x1280+13,
-  'h', 'W', 'a', 0, 0, 0, 0x1280+11,
-  'h', 'W', 'e', 0, 0, 0, 0x1280+8,
-  'h', 'W', 'e', 'e', 0, 0, 0x1280+12,
-  'h', 'W', 'i', 0, 0, 0, 0x1280+10,
-  'h', 'W', 'u', 0, 0, 0, 0x1280+13,
-  'h', 'a', 0, 0, 0, 0, 0x1200+3,
-  'h', 'e', 0, 0, 0, 0, 0x1200,
-  'h', 'e', 'e', 0, 0, 0, 0x1200+4,
-  'h', 'h', 0, 0, 0, 0, 0x1280+5,
-  'h', 'h', 'A', 0, 0, 0, 0x1280+3,
-  'h', 'h', 'E', 0, 0, 0, 0x1280+4,
-  'h', 'h', 'I', 0, 0, 0, 0x1280+2,
-  'h', 'h', 'O', 0, 0, 0, 0x1280+6,
-  'h', 'h', 'O', 'O', 0, 0, 0x1280+8,
-  'h', 'h', 'U', 0, 0, 0, 0x1280+1,
-  'h', 'h', 'W', 0, 0, 0, 0x1280+11,
-  'h', 'h', 'W', '\'', 0, 0, 0x1280+13,
-  'h', 'h', 'W', 'A', 0, 0, 0x1280+11,
-  'h', 'h', 'W', 'E', 0, 0, 0x1280+12,
-  'h', 'h', 'W', 'I', 0, 0, 0x1280+10,
-  'h', 'h', 'W', 'U', 0, 0, 0x1280+13,
-  'h', 'h', 'W', 'a', 0, 0, 0x1280+11,
-  'h', 'h', 'W', 'e', 0, 0, 0x1280+8,
-  'h', 'h', 'W', 'e', 'e', 0, 0x1280+12,
-  'h', 'h', 'W', 'i', 0, 0, 0x1280+10,
-  'h', 'h', 'W', 'u', 0, 0, 0x1280+13,
-  'h', 'h', 'a', 0, 0, 0, 0x1280+3,
-  'h', 'h', 'e', 0, 0, 0, 0x1280,
-  'h', 'h', 'e', 'e', 0, 0, 0x1280+4,
-  'h', 'h', 'i', 0, 0, 0, 0x1280+2,
-  'h', 'h', 'o', 0, 0, 0, 0x1280+6,
-  'h', 'h', 'o', 'o', 0, 0, 0x1280+8,
-  'h', 'h', 'u', 0, 0, 0, 0x1280+1,
-  'h', 'h', 'w', 'w',   0, 0, 0x1280+11,
-  'h', 'h', 'w', 'w', 'a', 0, 0x1280+11,
-  'h', 'h', 'w', 'w', 0, 0, 0x1280+11,
-  'h', 'h', 'w', 'w', '\'', 0, 0x1280+13,
-  'h', 'h', 'w', 'w', 'E', 0, 0x1280+12,
-  'h', 'h', 'w', 'w', 'a', 0, 0x1280+11,
-  'h', 'h', 'w', 'w', 'e', 0, 0x1280+8,
-  /* 'h', 'h', 'w', 'w', 'e', 'e', 0, 0x1280+12,  too long for now */
-  'h', 'h', 'w', 'w', 'i', 0, 0x1280+10,
-  'h', 'h', 'w', 'w', 'u', 0, 0x1280+13,
-  'h', 'i', 0, 0, 0, 0, 0x1200+2,
-  'h', 'o', 0, 0, 0, 0, 0x1200+6,
-  'h', 'u', 0, 0, 0, 0, 0x1200+1,
-  'h', 'w', 'w',   0, 0, 0, 0x1280+11,
-  'h', 'w', 'w', 'a', 0, 0, 0x1280+11,
-  'h', 'w', 'w', 0, 0, 0, 0x1280+11,
-  'h', 'w', 'w', '\'', 0, 0, 0x1280+13,
-  'h', 'w', 'w', 'E', 0, 0, 0x1280+12,
-  'h', 'w', 'w', 'a', 0, 0, 0x1280+11,
-  'h', 'w', 'w', 'e', 0, 0, 0x1280+8,
-  'h', 'w', 'w', 'e', 'e', 0, 0x1280+12,
-  'h', 'w', 'w', 'i', 0, 0, 0x1280+10,
-  'h', 'w', 'w', 'u', 0, 0, 0x1280+13,
-  'i',  0,  0,  0,  0, 0, 0x12A2,
-  'i', 'i', 0,  0,  0, 0, 0x12D2,
-  SYLW('j', 0x1300)
-  SYLWW('k', 0x12a8)
-  SYLW('l', 0x1208)
-  SYLW1('m', 0x1218)
-  'm', 'Y',   0,  0,  0, 0, 0x1359,
-  'm', 'Y', 'A',  0,  0, 0, 0x1359,
-  'm', 'Y', 'a',  0,  0, 0, 0x1359,
-  SYLW2('m', 0x1218)
-  SYLW('n', 0x1290)
-  'o',  0,  0,  0,  0, 0, 0x12A6,
-  'o','o',  0,  0,  0, 0, 0x12D6,
-  SYLW('p', 0x1350)
-  SYLWW('q', 0x1240)
-  SYLW1('r', 0x1228)
-  'r', 'Y',   0,  0,  0, 0, 0x1358,
-  'r', 'Y', 'A',  0,  0, 0, 0x1358,
-  'r', 'Y', 'a',  0,  0, 0, 0x1358,
-  SYLW2('r', 0x1228)
-  's',  0,  0, 0, 0, 0, 0x1230+5,
-  's', 'A', 0, 0, 0, 0, 0x1230+3,
-  's', 'E', 0, 0, 0, 0, 0x1230+4,
-  's', 'I', 0, 0, 0, 0, 0x1230+2,
-  's', 'O', 0, 0, 0, 0, 0x1230+6,
-  's', 'U', 0, 0, 0, 0, 0x1230+1,
-  's', 'W', 0, 0, 0, 0, 0x1230+7,
-  's', 'W', 'A', 0, 0, 0, 0x1230+7,
-  's', 'W', 'a', 0, 0, 0, 0x1230+7,
-  's', 'a', 0, 0, 0, 0, 0x1230+3,
-  's', 'e', 0, 0, 0, 0, 0x1230,
-  's', 'e', 'e', 0, 0, 0, 0x1230+4,
-  's', 'i', 0, 0, 0, 0, 0x1230+2,
-  's', 'o', 0, 0, 0, 0, 0x1230+6,
-  's', 's', 0, 0, 0, 0, 0x1220+5,
-  's', 's', 'A', 0, 0, 0, 0x1220+3,
-  's', 's', 'E', 0, 0, 0, 0x1220+4,
-  's', 's', 'I', 0, 0, 0, 0x1220+2,
-  's', 's', 'O', 0, 0, 0, 0x1220+6,
-  's', 's', 'U', 0, 0, 0, 0x1220+1,
-  's', 's', 'W', 0, 0, 0, 0x1220+7,
-  's', 's', 'W', 'A', 0, 0, 0x1220+7,
-  's', 's', 'W', 'a', 0, 0, 0x1220+7,
-  's', 's', 'a', 0, 0, 0, 0x1220+3,
-  's', 's', 'e', 0, 0, 0, 0x1220,
-  's', 's', 'e', 'e', 0, 0, 0x1220+4,
-  's', 's', 'i', 0, 0, 0, 0x1220+2,
-  's', 's', 'o', 0, 0, 0, 0x1220+6,
-  's', 's', 'u', 0, 0, 0, 0x1220+1,
-  's', 's', 'w', 'w', 0, 0, 0x1220+7,
-  's', 's', 'w', 'w', 'a', 0, 0x1220+7,
-  's', 'u', 0, 0, 0, 0, 0x1230+1,
-  's', 'w', 'w',   0, 0, 0, 0x1230+7,
-  's', 'w', 'w', 'a', 0, 0, 0x1230+7,
-  SYLW('t', 0x1270)
-  'u',  0,  0,  0,  0, 0, 0x12A1,
-  'u','u',  0,  0,  0, 0, 0x12D1,
-  SYLW('v', 0x1268)
-  SYL('w', 0x12c8)
-  SYLW('x', 0x1238)
-  SYL('y', 0x12e8)
-  SYLW('z', 0x12d8)
-  GDK_KEY_Shift_L, GDK_KEY_space, 0, 0, 0, 0, 0x1361,
-  GDK_KEY_Shift_R, GDK_KEY_space, 0, 0, 0, 0, 0x1361,
-};
-
-static void
-am_et_class_init (GtkIMContextSimpleClass *class)
-{
-}
-
-static void
-am_et_init (GtkIMContextSimple *im_context)
-{
-  gtk_im_context_simple_add_table (im_context,
-                                  am_et_compose_seqs,
-                                  5,
-                                  G_N_ELEMENTS (am_et_compose_seqs) / (5 + 2));
-}
-
-static const GtkIMContextInfo am_et_info = { 
-  "am_et",                /* ID */
-  NC_("input method menu", "Amharic (EZ+)"),     /* Human readable name */
-  GETTEXT_PACKAGE,        /* Translation domain */
-   GTK_LOCALEDIR,         /* Dir for bindtextdomain (not strictly needed for "gtk+") */
-  "am"                    /* Languages for which this module is the default */
-};
-
-static const GtkIMContextInfo *info_list[] = {
-  &am_et_info
-};
-
-#ifndef INCLUDE_IM_am_et
-#define MODULE_ENTRY(type,function) G_MODULE_EXPORT type im_module_ ## function
-#else
-#define MODULE_ENTRY(type, function) type _gtk_immodule_am_et_ ## function
-#endif
-
-MODULE_ENTRY (void, init) (GTypeModule *module)
-{
-  am_et_register_type (module);
-}
-
-MODULE_ENTRY (void, exit) (void)
-{
-}
-
-MODULE_ENTRY (void, list) (const GtkIMContextInfo ***contexts,
-                          int                      *n_contexts)
-{
-  *contexts = info_list;
-  *n_contexts = G_N_ELEMENTS (info_list);
-}
-
-MODULE_ENTRY (GtkIMContext *, create) (const gchar *context_id)
-{
-  if (strcmp (context_id, "am_et") == 0)
-    return g_object_new (type_am_et_translit, NULL);
-  else
-    return NULL;
-}
diff --git a/modules/input/imcedilla.c b/modules/input/imcedilla.c
deleted file mode 100644 (file)
index 74790b7..0000000
+++ /dev/null
@@ -1,128 +0,0 @@
-/* GTK - The GIMP Toolkit
- * Copyright (C) 2000 Red Hat Software
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library. If not, see <http://www.gnu.org/licenses/>.
- *
- * Author: Owen Taylor <otaylor@redhat.com>
- *
- */
-
-#include "config.h"
-#include <string.h>
-
-#include "gtk/gtk.h"
-#include "gdk/gdkkeysyms.h"
-
-#include "gtk/gtkimmodule.h"
-#include "gtk/gtkintl.h"
-
-
-GType type_cedilla = 0;
-
-static void cedilla_class_init (GtkIMContextSimpleClass *class);
-static void cedilla_init (GtkIMContextSimple *im_context);
-
-static void
-cedilla_register_type (GTypeModule *module)
-{
-  const GTypeInfo object_info =
-  {
-    sizeof (GtkIMContextSimpleClass),
-    (GBaseInitFunc) NULL,
-    (GBaseFinalizeFunc) NULL,
-    (GClassInitFunc) cedilla_class_init,
-    NULL,           /* class_finalize */
-    NULL,           /* class_data */
-    sizeof (GtkIMContextSimple),
-    0,
-    (GInstanceInitFunc) cedilla_init,
-  };
-
-  type_cedilla = 
-    g_type_module_register_type (module,
-                                GTK_TYPE_IM_CONTEXT_SIMPLE,
-                                "GtkIMContextCedillaTranslit",
-                                &object_info, 0);
-}
-
-/* The difference between this and the default input method is the handling
- * of C+acute - this method produces C WITH CEDILLA rather than C WITH ACUTE.
- * For languages that use CCedilla and not acute, this is the preferred mapping,
- * and is particularly important for pt_BR, where the us-intl keyboard is
- * used extensively.
- */
-static guint16 cedilla_compose_seqs[] = {
-  GDK_KEY_dead_acute,  GDK_KEY_C,      0,      0,      0,      0x00C7, /* LATIN_CAPITAL_LETTER_C_WITH_CEDILLA */
-  GDK_KEY_dead_acute,  GDK_KEY_c,      0,      0,      0,      0x00E7, /* LATIN_SMALL_LETTER_C_WITH_CEDILLA */
-  GDK_KEY_Multi_key,   GDK_KEY_apostrophe,     GDK_KEY_C,  0,      0,      0x00C7, /* LATIN_CAPITAL_LETTER_C_WITH_CEDILLA */
-  GDK_KEY_Multi_key,   GDK_KEY_apostrophe,     GDK_KEY_c,  0,      0,      0x00E7, /* LATIN_SMALL_LETTER_C_WITH_CEDILLA */
-  GDK_KEY_Multi_key,   GDK_KEY_C,  GDK_KEY_apostrophe, 0,      0,      0x00C7, /* LATIN_CAPITAL_LETTER_C_WITH_CEDILLA */
-  GDK_KEY_Multi_key,   GDK_KEY_c,  GDK_KEY_apostrophe, 0,      0,      0x00E7, /* LATIN_SMALL_LETTER_C_WITH_CEDILLA */
-};
-
-static void
-cedilla_class_init (GtkIMContextSimpleClass *class)
-{
-}
-
-static void
-cedilla_init (GtkIMContextSimple *im_context)
-{
-  gtk_im_context_simple_add_table (im_context,
-                                  cedilla_compose_seqs,
-                                  4,
-                                  G_N_ELEMENTS (cedilla_compose_seqs) / (4 + 2));
-}
-
-static const GtkIMContextInfo cedilla_info = { 
-  "cedilla",                      /* ID */
-  NC_("input method menu", "Cedilla"), /* Human readable name */
-  GETTEXT_PACKAGE,                /* Translation domain */
-  GTK_LOCALEDIR,                  /* Dir for bindtextdomain */
-  "az:ca:co:fr:gv:oc:pt:sq:tr:wa"  /* Languages for which this module is the default */
-};
-
-static const GtkIMContextInfo *info_list[] = {
-  &cedilla_info
-};
-
-#ifndef INCLUDE_IM_cedilla
-#define MODULE_ENTRY(type, function) G_MODULE_EXPORT type im_module_ ## function
-#else
-#define MODULE_ENTRY(type, function) type _gtk_immodule_cedilla_ ## function
-#endif
-
-MODULE_ENTRY (void, init) (GTypeModule *module)
-{
-  cedilla_register_type (module);
-}
-
-MODULE_ENTRY (void, exit) (void)
-{
-}
-
-MODULE_ENTRY (void, list) (const GtkIMContextInfo ***contexts,
-                          int                      *n_contexts)
-{
-  *contexts = info_list;
-  *n_contexts = G_N_ELEMENTS (info_list);
-}
-
-MODULE_ENTRY (GtkIMContext *, create) (const gchar *context_id)
-{
-  if (strcmp (context_id, "cedilla") == 0)
-    return g_object_new (type_cedilla, NULL);
-  else
-    return NULL;
-}
diff --git a/modules/input/imcyrillic-translit.c b/modules/input/imcyrillic-translit.c
deleted file mode 100644 (file)
index 68b0392..0000000
+++ /dev/null
@@ -1,253 +0,0 @@
-/* GTK - The GIMP Toolkit
- * Copyright (C) 2000 Red Hat Software
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library. If not, see <http://www.gnu.org/licenses/>.
- *
- * Author: Owen Taylor <otaylor@redhat.com>
- *
- */
-
-#include "config.h"
-#include <string.h>
-
-#include "gtk/gtk.h"
-#include "gdk/gdkkeysyms.h"
-
-#include "gtk/gtkimmodule.h"
-#include "gtk/gtkintl.h"
-
-GType type_cyrillic_translit = 0;
-
-static void cyrillic_translit_class_init (GtkIMContextSimpleClass *class);
-static void cyrillic_translit_init (GtkIMContextSimple *im_context);
-
-static void
-cyrillic_translit_register_type (GTypeModule *module)
-{
-  const GTypeInfo object_info =
-  {
-    sizeof (GtkIMContextSimpleClass),
-    (GBaseInitFunc) NULL,
-    (GBaseFinalizeFunc) NULL,
-    (GClassInitFunc) cyrillic_translit_class_init,
-    NULL,           /* class_finalize */
-    NULL,           /* class_data */
-    sizeof (GtkIMContextSimple),
-    0,
-    (GInstanceInitFunc) cyrillic_translit_init,
-  };
-
-  type_cyrillic_translit = 
-    g_type_module_register_type (module,
-                                GTK_TYPE_IM_CONTEXT_SIMPLE,
-                                "GtkIMContextCyrillicTranslit",
-                                &object_info, 0);
-}
-
-/* The sequences here match the sequences used in the emacs quail
- * mode cryllic-translit; they allow entering all characters
- * in iso-8859-5
- */
-static guint16 cyrillic_compose_seqs[] = {
-  GDK_KEY_apostrophe,    0,      0,      0,      0,      0x44C,        /* CYRILLIC SMALL LETTER SOFT SIGN */
-  GDK_KEY_apostrophe,    GDK_KEY_apostrophe,      0,      0,      0,      0x42C,       /* CYRILLIC CAPITAL LETTER SOFT SIGN */
-  GDK_KEY_slash,    GDK_KEY_C,  GDK_KEY_H,      0,      0,      0x040B, /* CYRILLIC CAPITAL LETTER TSHE */
-  GDK_KEY_slash,    GDK_KEY_C,  GDK_KEY_h,      0,      0,      0x040B, /* CYRILLIC CAPITAL LETTER TSHE */
-  GDK_KEY_slash,    GDK_KEY_D,  0,      0,      0,      0x0402, /* CYRILLIC CAPITAL LETTER DJE */
-  GDK_KEY_slash,    GDK_KEY_E,  0,      0,      0,      0x0404, /* CYRILLIC CAPITAL LETTER UKRAINIAN IE */
-  GDK_KEY_slash,    GDK_KEY_G,  0,      0,      0,      0x0403, /* CYRILLIC CAPITAL LETTER GJE */
-  GDK_KEY_slash,    GDK_KEY_I,  0,      0,      0,      0x0406, /* CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I */
-  GDK_KEY_slash,    GDK_KEY_J,  0,      0,      0,      0x0408, /* CYRILLIC CAPITAL LETTER JE */
-  GDK_KEY_slash,    GDK_KEY_K,  0,      0,      0,      0x040C, /* CYRILLIC CAPITAL LETTER KJE */
-  GDK_KEY_slash,    GDK_KEY_L,  0,      0,      0,      0x0409, /* CYRILLIC CAPITAL LETTER LJE */
-  GDK_KEY_slash,    GDK_KEY_N,  0,      0,      0,      0x040A, /* CYRILLIC CAPITAL LETTER NJE */
-  GDK_KEY_slash,    GDK_KEY_S,  0,      0,      0,      0x0405, /* CYRILLIC CAPITAL LETTER DZE */
-  GDK_KEY_slash,    GDK_KEY_S,  GDK_KEY_H,  GDK_KEY_T,  0,      0x0429, /* CYRILLIC CAPITAL LETTER SHCH */
-  GDK_KEY_slash,    GDK_KEY_S,  GDK_KEY_H,  GDK_KEY_t,  0,      0x0429, /* CYRILLIC CAPITAL LETTER SHCH */
-  GDK_KEY_slash,    GDK_KEY_S,  GDK_KEY_h,  GDK_KEY_t,  0,      0x0429, /* CYRILLIC CAPITAL LETTER SHCH */
-  GDK_KEY_slash,    GDK_KEY_T,  0,      0,      0,      0x0429, /* CYRILLIC CAPITAL LETTER SHCH */
-  GDK_KEY_slash,    GDK_KEY_Z,  0,      0,      0,      0x040F, /* CYRILLIC CAPITAL LETTER DZHE */
-  GDK_KEY_slash,    GDK_KEY_c,  GDK_KEY_h,      0,      0,      0x045B, /* CYRILLIC SMALL LETTER TSHE */
-  GDK_KEY_slash,    GDK_KEY_d,  0,      0,      0,      0x0452, /* CYRILLIC SMALL LETTER DJE */
-  GDK_KEY_slash,    GDK_KEY_e,  0,      0,      0,      0x0454, /* CYRILLIC SMALL LETTER UKRAINIAN IE */
-  GDK_KEY_slash,    GDK_KEY_g,  0,      0,      0,      0x0453, /* CYRILLIC SMALL LETTER GJE */
-  GDK_KEY_slash,    GDK_KEY_i,  0,      0,      0,      0x0456, /* CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I */
-  GDK_KEY_slash,    GDK_KEY_j,  0,      0,      0,      0x0458, /* CYRILLIC SMALL LETTER JE */
-  GDK_KEY_slash,    GDK_KEY_k,  0,      0,      0,      0x045C, /* CYRILLIC SMALL LETTER KJE */
-  GDK_KEY_slash,    GDK_KEY_l,  0,      0,      0,      0x0459, /* CYRILLIC SMALL LETTER LJE */
-  GDK_KEY_slash,    GDK_KEY_n,  0,      0,      0,      0x045A, /* CYRILLIC SMALL LETTER NJE */
-  GDK_KEY_slash,    GDK_KEY_s,  0,      0,      0,      0x0455, /* CYRILLIC SMALL LETTER DZE */
-  GDK_KEY_slash,    GDK_KEY_s,  GDK_KEY_h,  GDK_KEY_t,  0,      0x0449, /* CYRILLIC SMALL LETTER SHCH */
-  GDK_KEY_slash,    GDK_KEY_t,  0,      0,      0,      0x0449, /* CYRILLIC SMALL LETTER SHCH */
-  GDK_KEY_slash,    GDK_KEY_z,  0,      0,      0,      0x045F, /* CYRILLIC SMALL LETTER DZHE */
-  GDK_KEY_A,   0,      0,      0,      0,      0x0410, /* CYRILLIC CAPITAL LETTER A */
-  GDK_KEY_B,   0,      0,      0,      0,      0x0411, /* CYRILLIC CAPITAL LETTER BE */
-  GDK_KEY_C,   0,      0,      0,      0,      0x0426, /* CYRILLIC CAPITAL LETTER TSE */
-  GDK_KEY_C,   GDK_KEY_H,      0,      0,      0,      0x0427, /* CYRILLIC CAPITAL LETTER CHE */
-  GDK_KEY_C,   GDK_KEY_h,      0,      0,      0,      0x0427, /* CYRILLIC CAPITAL LETTER CHE */
-  GDK_KEY_D,   0,      0,      0,      0,      0x0414, /* CYRILLIC CAPITAL LETTER DE */
-  GDK_KEY_E,   0,      0,      0,      0,      0x0415, /* CYRILLIC CAPITAL LETTER IE */
-  GDK_KEY_E,   GDK_KEY_apostrophe,     0,      0,      0,      0x042D, /* CYRILLIC CAPITAL LETTER E */
-  GDK_KEY_F,   0,      0,      0,      0,      0x0424, /* CYRILLIC CAPITAL LETTER EF */
-  GDK_KEY_G,   0,      0,      0,      0,      0x0413, /* CYRILLIC CAPITAL LETTER GE */
-  GDK_KEY_H,   0,      0,      0,      0,      0x0425, /* CYRILLIC CAPITAL LETTER HA */
-  GDK_KEY_I,   0,      0,      0,      0,      0x0418, /* CYRILLIC CAPITAL LETTER I */
-  GDK_KEY_J,   0,      0,      0,      0,      0x0419, /* CYRILLIC CAPITAL LETTER SHORT I */
-  GDK_KEY_J,   GDK_KEY_apostrophe,     0,      0,      0,      0x0419, /* CYRILLIC CAPITAL LETTER SHORT I */
-  GDK_KEY_J,   GDK_KEY_A,      0,      0,      0,      0x042F, /* CYRILLIC CAPITAL LETTER YA */
-  GDK_KEY_J,   GDK_KEY_I,      0,      0,      0,      0x0407, /* CYRILLIC CAPITAL LETTER YI */
-  GDK_KEY_J,   GDK_KEY_O,      0,      0,      0,      0x0401, /* CYRILLIC CAPITAL LETTER YO */
-  GDK_KEY_J,   GDK_KEY_U,      0,      0,      0,      0x042E, /* CYRILLIC CAPITAL LETTER YA */
-  GDK_KEY_J,   GDK_KEY_a,      0,      0,      0,      0x042F, /* CYRILLIC CAPITAL LETTER YA */
-  GDK_KEY_J,   GDK_KEY_i,      0,      0,      0,      0x0407, /* CYRILLIC CAPITAL LETTER YI */
-  GDK_KEY_J,   GDK_KEY_o,      0,      0,      0,      0x0401, /* CYRILLIC CAPITAL LETTER YO */
-  GDK_KEY_J,   GDK_KEY_u,      0,      0,      0,      0x042E, /* CYRILLIC CAPITAL LETTER YA */
-  GDK_KEY_K,   0,      0,      0,      0,      0x041A, /* CYRILLIC CAPITAL LETTER KA */
-  GDK_KEY_K,   GDK_KEY_H,      0,      0,      0,      0x0425, /* CYRILLIC CAPITAL LETTER HA */
-  GDK_KEY_L,   0,      0,      0,      0,      0x041B, /* CYRILLIC CAPITAL LETTER EL */
-  GDK_KEY_M,   0,      0,      0,      0,      0x041C, /* CYRILLIC CAPITAL LETTER EM */
-  GDK_KEY_N,   0,      0,      0,      0,      0x041D, /* CYRILLIC CAPITAL LETTER EN */
-  GDK_KEY_O,   0,      0,      0,      0,      0x041E, /* CYRILLIC CAPITAL LETTER O */
-  GDK_KEY_P,   0,      0,      0,      0,      0x041F, /* CYRILLIC CAPITAL LETTER PE */
-  GDK_KEY_Q,   0,      0,      0,      0,      0x042F, /* CYRILLIC CAPITAL LETTER YA */
-  GDK_KEY_R,   0,      0,      0,      0,      0x0420, /* CYRILLIC CAPITAL LETTER ER */
-  GDK_KEY_S,   0,      0,      0,      0,      0x0421, /* CYRILLIC CAPITAL LETTER ES */
-  GDK_KEY_S,   GDK_KEY_H,      0,      0,      0,      0x0428, /* CYRILLIC CAPITAL LETTER SHA */
-  GDK_KEY_S,   GDK_KEY_H,      GDK_KEY_C,      GDK_KEY_H,      0,      0x0429, /* CYRILLIC CAPITAL LETTER SHCA */
-  GDK_KEY_S,   GDK_KEY_H,      GDK_KEY_C,      GDK_KEY_h,      0,      0x0429, /* CYRILLIC CAPITAL LETTER SHCA */
-  GDK_KEY_S,   GDK_KEY_H,      GDK_KEY_c,      GDK_KEY_h,      0,      0x0429, /* CYRILLIC CAPITAL LETTER SHCA */
-  GDK_KEY_S,   GDK_KEY_H,      GDK_KEY_c,      GDK_KEY_h,      0,      0x0429, /* CYRILLIC CAPITAL LETTER SHCA */
-  GDK_KEY_S,   GDK_KEY_J,      0,      0,      0,      0x0429, /* CYRILLIC CAPITAL LETTER SHCA */
-  GDK_KEY_S,   GDK_KEY_h,      0,      0,      0,      0x0428, /* CYRILLIC CAPITAL LETTER SHA */
-  GDK_KEY_S,   GDK_KEY_j,      0,      0,      0,      0x0429, /* CYRILLIC CAPITAL LETTER SHCA */
-  GDK_KEY_T,   0,      0,      0,      0,      0x0422, /* CYRILLIC CAPITAL LETTER TE */
-  GDK_KEY_U,   0,      0,      0,      0,      0x0423, /* CYRILLIC CAPITAL LETTER U */
-  GDK_KEY_U,   GDK_KEY_apostrophe,     0,      0,      0,      0x040E, /* CYRILLIC CAPITAL LETTER SHORT */
-  GDK_KEY_V,   0,      0,      0,      0,      0x0412, /* CYRILLIC CAPITAL LETTER VE */
-  GDK_KEY_W,   0,      0,      0,      0,      0x0412, /* CYRILLIC CAPITAL LETTER VE */
-  GDK_KEY_X,   0,      0,      0,      0,      0x0425, /* CYRILLIC CAPITAL LETTER HA */
-  GDK_KEY_Y,   0,      0,      0,      0,      0x042B, /* CYRILLIC CAPITAL LETTER YERU */
-  GDK_KEY_Y,   GDK_KEY_A,      0,      0,      0,      0x042F, /* CYRILLIC CAPITAL LETTER YA */
-  GDK_KEY_Y,   GDK_KEY_I,      0,      0,      0,      0x0407, /* CYRILLIC CAPITAL LETTER YI */
-  GDK_KEY_Y,   GDK_KEY_O,      0,      0,      0,      0x0401, /* CYRILLIC CAPITAL LETTER YO */
-  GDK_KEY_Y,   GDK_KEY_U,      0,      0,      0,      0x042E, /* CYRILLIC CAPITAL LETTER YU */
-  GDK_KEY_Y,   GDK_KEY_a,      0,      0,      0,      0x042F, /* CYRILLIC CAPITAL LETTER YA */
-  GDK_KEY_Y,   GDK_KEY_i,      0,      0,      0,      0x0407, /* CYRILLIC CAPITAL LETTER YI */
-  GDK_KEY_Y,   GDK_KEY_o,      0,      0,      0,      0x0401, /* CYRILLIC CAPITAL LETTER YO */
-  GDK_KEY_Y,   GDK_KEY_u,      0,      0,      0,      0x042E, /* CYRILLIC CAPITAL LETTER YU */
-  GDK_KEY_Z,   0,      0,      0,      0,      0x0417, /* CYRILLIC CAPITAL LETTER ZE */
-  GDK_KEY_Z,   GDK_KEY_H,      0,      0,      0,      0x0416, /* CYRILLIC CAPITAL LETTER ZHE */
-  GDK_KEY_Z,   GDK_KEY_h,      0,      0,      0,      0x0416, /* CYRILLIC CAPITAL LETTER ZHE */
-  GDK_KEY_a,   0,      0,      0,      0,      0x0430, /* CYRILLIC SMALL LETTER A */
-  GDK_KEY_b,   0,      0,      0,      0,      0x0431, /* CYRILLIC SMALL LETTER BE */
-  GDK_KEY_c,   0,      0,      0,      0,      0x0446, /* CYRILLIC SMALL LETTER TSE */
-  GDK_KEY_c,   GDK_KEY_h,      0,      0,      0,      0x0447, /* CYRILLIC SMALL LETTER CHE */
-  GDK_KEY_d,   0,      0,      0,      0,      0x0434, /* CYRILLIC SMALL LETTER DE */
-  GDK_KEY_e,   0,      0,      0,      0,      0x0435, /* CYRILLIC SMALL LETTER IE */
-  GDK_KEY_e,   GDK_KEY_apostrophe,     0,      0,      0,      0x044D, /* CYRILLIC SMALL LETTER E */
-  GDK_KEY_f,   0,      0,      0,      0,      0x0444, /* CYRILLIC SMALL LETTER EF */
-  GDK_KEY_g,   0,      0,      0,      0,      0x0433, /* CYRILLIC SMALL LETTER GE */
-  GDK_KEY_h,   0,      0,      0,      0,      0x0445, /* CYRILLIC SMALL LETTER HA */
-  GDK_KEY_i,   0,      0,      0,      0,      0x0438, /* CYRILLIC SMALL LETTER I */
-  GDK_KEY_j,   0,      0,      0,      0,      0x0439, /* CYRILLIC SMALL LETTER SHORT I */
-  GDK_KEY_j,   GDK_KEY_apostrophe,     0,      0,      0,      0x0439, /* CYRILLIC SMALL LETTER SHORT I */
-  GDK_KEY_j,   GDK_KEY_a,      0,      0,      0,      0x044F, /* CYRILLIC SMALL LETTER YU */
-  GDK_KEY_j,   GDK_KEY_i,      0,      0,      0,      0x0457, /* CYRILLIC SMALL LETTER YI */
-  GDK_KEY_j,   GDK_KEY_o,      0,      0,      0,      0x0451, /* CYRILLIC SMALL LETTER YO */
-  GDK_KEY_j,   GDK_KEY_u,      0,      0,      0,      0x044E, /* CYRILLIC SMALL LETTER YA */
-  GDK_KEY_k,   0,      0,      0,      0,      0x043A, /* CYRILLIC SMALL LETTER KA */
-  GDK_KEY_k,   GDK_KEY_h,      0,      0,      0,      0x0445, /* CYRILLIC SMALL LETTER HA */
-  GDK_KEY_l,   0,      0,      0,      0,      0x043B, /* CYRILLIC SMALL LETTER EL */
-  GDK_KEY_m,   0,      0,      0,      0,      0x043C, /* CYRILLIC SMALL LETTER EM */
-  GDK_KEY_n,   0,      0,      0,      0,      0x043D, /* CYRILLIC SMALL LETTER EN */
-  GDK_KEY_o,   0,      0,      0,      0,      0x043E, /* CYRILLIC SMALL LETTER O */
-  GDK_KEY_p,   0,      0,      0,      0,      0x043F, /* CYRILLIC SMALL LETTER PE */
-  GDK_KEY_q,   0,      0,      0,      0,      0x044F, /* CYRILLIC SMALL LETTER YA */
-  GDK_KEY_r,   0,      0,      0,      0,      0x0440, /* CYRILLIC SMALL LETTER ER */
-  GDK_KEY_s,   0,      0,      0,      0,      0x0441, /* CYRILLIC SMALL LETTER ES */
-  GDK_KEY_s,   GDK_KEY_h,      0,      0,      0,      0x0448, /* CYRILLIC SMALL LETTER SHA */
-  GDK_KEY_s,   GDK_KEY_h,      GDK_KEY_c,      GDK_KEY_h,      0,      0x0449, /* CYRILLIC SMALL LETTER SHCA */
-  GDK_KEY_s,   GDK_KEY_j,      0,      0,      0,      0x0449, /* CYRILLIC SMALL LETTER SHCA */
-  GDK_KEY_t,   0,      0,      0,      0,      0x0442, /* CYRILLIC SMALL LETTER TE */
-  GDK_KEY_u,   0,      0,      0,      0,      0x0443, /* CYRILLIC SMALL LETTER U */
-  GDK_KEY_u,   GDK_KEY_apostrophe,     0,      0,      0,      0x045E, /* CYRILLIC SMALL LETTER SHORT */
-  GDK_KEY_v,   0,      0,      0,      0,      0x0432, /* CYRILLIC SMALL LETTER VE */
-  GDK_KEY_w,   0,      0,      0,      0,      0x0432, /* CYRILLIC SMALL LETTER VE */
-  GDK_KEY_x,   0,      0,      0,      0,      0x0445, /* CYRILLIC SMALL LETTER HA */
-  GDK_KEY_y,   0,      0,      0,      0,      0x044B, /* CYRILLIC SMALL LETTER YERU */
-  GDK_KEY_y,   GDK_KEY_a,      0,      0,      0,      0x044F, /* CYRILLIC SMALL LETTER YU */
-  GDK_KEY_y,   GDK_KEY_i,      0,      0,      0,      0x0457, /* CYRILLIC SMALL LETTER YI */
-  GDK_KEY_y,   GDK_KEY_o,      0,      0,      0,      0x0451, /* CYRILLIC SMALL LETTER YO */
-  GDK_KEY_y,   GDK_KEY_u,      0,      0,      0,      0x044E, /* CYRILLIC SMALL LETTER YA */
-  GDK_KEY_z,   0,      0,      0,      0,      0x0437, /* CYRILLIC SMALL LETTER ZE */
-  GDK_KEY_z,   GDK_KEY_h,      0,      0,      0,      0x0436, /* CYRILLIC SMALL LETTER ZHE */
-  GDK_KEY_asciitilde,    0,      0,      0,      0,      0x44A,        /* CYRILLIC SMALL LETTER HARD SIGN */
-  GDK_KEY_asciitilde,    GDK_KEY_asciitilde,      0,      0,      0,      0x42A,       /* CYRILLIC CAPITAL LETTER HARD SIGN */
-};
-
-static void
-cyrillic_translit_class_init (GtkIMContextSimpleClass *class)
-{
-}
-
-static void
-cyrillic_translit_init (GtkIMContextSimple *im_context)
-{
-  gtk_im_context_simple_add_table (im_context,
-                                  cyrillic_compose_seqs,
-                                  4,
-                                  G_N_ELEMENTS (cyrillic_compose_seqs) / (4 + 2));
-}
-
-static const GtkIMContextInfo cyrillic_translit_info = { 
-  "cyrillic_translit",            /* ID */
-  NC_("input menthod menu", "Cyrillic (Transliterated)"), /* Human readable name */
-  GETTEXT_PACKAGE,                /* Translation domain */
-   GTK_LOCALEDIR,                 /* Dir for bindtextdomain (not strictly needed for "gtk+") */
-  ""                              /* Languages for which this module is the default */
-};
-
-static const GtkIMContextInfo *info_list[] = {
-  &cyrillic_translit_info
-};
-
-#ifndef INCLUDE_IM_cyrillic_translit
-#define MODULE_ENTRY(type, function) G_MODULE_EXPORT type im_module_ ## function
-#else
-#define MODULE_ENTRY(type, function) type _gtk_immodule_cyrillic_translit_ ## function
-#endif
-
-MODULE_ENTRY (void, init) (GTypeModule *module)
-{
-  cyrillic_translit_register_type (module);
-}
-
-MODULE_ENTRY (void, exit) (void)
-{
-}
-
-MODULE_ENTRY (void, list) (const GtkIMContextInfo ***contexts,
-                          int                      *n_contexts)
-{
-  *contexts = info_list;
-  *n_contexts = G_N_ELEMENTS (info_list);
-}
-
-MODULE_ENTRY (GtkIMContext *, create) (const gchar *context_id)
-{
-  if (strcmp (context_id, "cyrillic_translit") == 0)
-    return g_object_new (type_cyrillic_translit, NULL);
-  else
-    return NULL;
-}
diff --git a/modules/input/iminuktitut.c b/modules/input/iminuktitut.c
deleted file mode 100644 (file)
index 651e4be..0000000
+++ /dev/null
@@ -1,163 +0,0 @@
-/* GTK - The GIMP Toolkit
- * Copyright (C) 2000 Red Hat Software
- * Copyright (C) 2000 SuSE Linux Ltd
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library. If not, see <http://www.gnu.org/licenses/>.
- *
- * Original author: Owen Taylor <otaylor@redhat.com>
- * 
- * Modified for Inuktitut - Robert Brady <robert@suse.co.uk>
- *
- */
-
-#include "config.h"
-#include <string.h>
-
-#include "gtk/gtk.h"
-#include "gdk/gdkkeysyms.h"
-
-#include "gtk/gtkimmodule.h"
-#include "gtk/gtkintl.h"
-
-GType type_inuktitut_translit = 0;
-
-static void inuktitut_class_init (GtkIMContextSimpleClass *class);
-static void inuktitut_init (GtkIMContextSimple *im_context);
-
-static void
-inuktitut_register_type (GTypeModule *module)
-{
-  const GTypeInfo object_info =
-  {
-    sizeof (GtkIMContextSimpleClass),
-    (GBaseInitFunc) NULL,
-    (GBaseFinalizeFunc) NULL,
-    (GClassInitFunc) inuktitut_class_init,
-    NULL,           /* class_finalize */
-    NULL,           /* class_data */
-    sizeof (GtkIMContextSimple),
-    0,
-    (GInstanceInitFunc) inuktitut_init,
-  };
-
-  type_inuktitut_translit = 
-    g_type_module_register_type (module,
-                                GTK_TYPE_IM_CONTEXT_SIMPLE,
-                                "GtkIMContextInuktitut",
-                                &object_info, 0);
-}
-
-#define SYL(a,b,c,d) \
-  a, 0,   0, 0, 0, c, \
-  a, 'a', 0, 0, 0, b+7-d, \
-  a, 'a','a',0, 0, b+8-d, \
-  a, 'i', 0, 0, 0, b, \
-  a, 'i','i',0, 0, b+1, \
-  a, 'o', 0, 0, 0, b+2, \
-  a, 'o','o',0, 0, b+3, \
-  a, 'u', 0, 0, 0, b+2, \
-  a, 'u','u',0, 0, b+3,
-
-static guint16 inuktitut_compose_seqs[] = {
-  'a', 0,   0,   0 ,  0,   0x140a,
-  'a', 'a', 0,   0,   0,   0x140b,
-
-  SYL('c', 0x148b, 0x14a1, 2) /* As g */
-  SYL('f', 0x1555, 0x155d, 2)
-  SYL('g', 0x148b, 0x14a1, 2)
-  SYL('h', 0x14ef, 0x1505, 2)
-
-  'i', 0,   0,   0 ,  0,   0x1403,
-  'i', 'i', 0,   0,   0,   0x1404,
-
-  SYL('j', 0x1528, 0x153e, 2)
-  SYL('k', 0x146d, 0x1483, 2)
-  SYL('l', 0x14d5, 0x14ea, 2)
-  SYL('m', 0x14a5, 0x14bb, 2)
-  SYL('n', 0x14c2, 0x14d0, 2)
-
-  'o', 0,   0,   0 ,  0,   0x1405, /* as u */
-  'o', 'o', 0,   0,   0,   0x1406,
-
-  SYL('p', 0x1431, 0x1449, 0)
-  SYL('q', 0x157f, 0x1585, 3)
-  SYL('r', 0x1546, 0x1550, 2)
-  SYL('s', 0x14ef, 0x1505, 2) /* As h */
-  SYL('t', 0x144e, 0x1466, 0)
-
-  'u', 0,   0,   0 ,  0,   0x1405,
-  'u', 'u', 0,   0,   0,   0x1406,
-
-  SYL('v', 0x1555, 0x155d, 2) /* as f */
-  SYL('y', 0x1528, 0x153e, 2) /* As j */
-
-  SYL(GDK_KEY_lstroke, 0x15a0, 0x15a6, 3) /* l- */
-  SYL(GDK_KEY_eng, 0x158f, 0x1595, 3)     /* ng */
-};
-
-static void
-inuktitut_class_init (GtkIMContextSimpleClass *class)
-{
-}
-
-static void
-inuktitut_init (GtkIMContextSimple *im_context)
-{
-  gtk_im_context_simple_add_table (im_context,
-                                  inuktitut_compose_seqs,
-                                  4,
-                                  G_N_ELEMENTS (inuktitut_compose_seqs) / (4 + 2));
-}
-
-static const GtkIMContextInfo inuktitut_info = { 
-  "inuktitut",            /* ID */
-  NC_("input method menu", "Inuktitut (Transliterated)"), /* Human readable name */
-  GETTEXT_PACKAGE,        /* Translation domain */
-  GTK_LOCALEDIR,          /* Dir for bindtextdomain (not strictly needed for "gtk+") */
-  "iu"                    /* Languages for which this module is the default */
-};
-
-static const GtkIMContextInfo *info_list[] = {
-  &inuktitut_info
-};
-
-#ifndef INCLUDE_IM_inuktitut
-#define MODULE_ENTRY(type, function) G_MODULE_EXPORT type im_module_ ## function
-#else
-#define MODULE_ENTRY(type, function) type _gtk_immodule_inuktitut_ ## function
-#endif
-
-MODULE_ENTRY (void, init) (GTypeModule *module)
-{
-  inuktitut_register_type (module);
-}
-
-MODULE_ENTRY (void, exit) (void)
-{
-}
-
-MODULE_ENTRY (void, list) (const GtkIMContextInfo ***contexts,
-                          int                      *n_contexts)
-{
-  *contexts = info_list;
-  *n_contexts = G_N_ELEMENTS (info_list);
-}
-
-MODULE_ENTRY (GtkIMContext *, create) (const gchar *context_id)
-{
-  if (strcmp (context_id, "inuktitut") == 0)
-    return g_object_new (type_inuktitut_translit, NULL);
-  else
-    return NULL;
-}
diff --git a/modules/input/imipa.c b/modules/input/imipa.c
deleted file mode 100644 (file)
index efbc3bd..0000000
+++ /dev/null
@@ -1,181 +0,0 @@
-/* GTK - The GIMP Toolkit
- * Copyright (C) 2000 Red Hat Software
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library. If not, see <http://www.gnu.org/licenses/>.
- *
- * Author: Owen Taylor <otaylor@redhat.com>
- *
- */
-
-#include "config.h"
-#include <string.h>
-
-#include "gtk/gtk.h"
-#include "gdk/gdkkeysyms.h"
-
-#include "gtk/gtkimmodule.h"
-#include "gtk/gtkintl.h"
-
-GType type_ipa = 0;
-
-static void ipa_class_init (GtkIMContextSimpleClass *class);
-static void ipa_init (GtkIMContextSimple *im_context);
-
-static void
-ipa_register_type (GTypeModule *module)
-{
-  const GTypeInfo object_info =
-  {
-    sizeof (GtkIMContextSimpleClass),
-    (GBaseInitFunc) NULL,
-    (GBaseFinalizeFunc) NULL,
-    (GClassInitFunc) ipa_class_init,
-    NULL,           /* class_finalize */
-    NULL,           /* class_data */
-    sizeof (GtkIMContextSimple),
-    0,
-    (GInstanceInitFunc) ipa_init,
-  };
-
-  type_ipa = 
-    g_type_module_register_type (module,
-                                GTK_TYPE_IM_CONTEXT_SIMPLE,
-                                "GtkIMContextIpa",
-                                &object_info, 0);
-}
-
-/* The sequences here match the sequences used in the emacs quail
- * mode cryllic-translit; they allow entering all characters
- * in iso-8859-5
- */
-static guint16 ipa_compose_seqs[] = {
-  GDK_KEY_ampersand, 0,           0,      0,      0,      0x263,       /* LATIN SMALL LETTER GAMMA */
-  GDK_KEY_apostrophe, 0,          0,      0,      0,      0x2C8,       /* MODIFIER LETTER VERTICAL LINE */
-  GDK_KEY_slash,  GDK_KEY_apostrophe, 0,      0,      0,      0x2CA,   /* MODIFIER LETTER ACUTE ACCENT */
-  GDK_KEY_slash,  GDK_KEY_slash,      0,      0,      0,      0x02F,   /* SOLIDUS */
-  GDK_KEY_slash,  GDK_KEY_3,          0,      0,      0,      0x25B,   /* LATIN SMALL LETTER OPEN E */
-  GDK_KEY_slash,  GDK_KEY_A,          0,      0,      0,      0x252,   /* LATIN LETTER TURNED ALPHA */
-  GDK_KEY_slash,  GDK_KEY_R,          0,      0,      0,      0x281,   /* LATIN LETTER SMALL CAPITAL INVERTED R */
-  GDK_KEY_slash,  GDK_KEY_a,          0,      0,      0,      0x250,   /* LATIN SMALL LETTER TURNED A */
-  GDK_KEY_slash,  GDK_KEY_c,          0,      0,      0,      0x254,   /* LATIN SMALL LETTER OPEN O */
-  GDK_KEY_slash,  GDK_KEY_e,          0,      0,      0,      0x259,   /* LATIN SMALL LETTER SCHWA */
-  GDK_KEY_slash,  GDK_KEY_h,          0,      0,      0,      0x265,   /* LATIN SMALL LETTER TURNED H */
-  GDK_KEY_slash,  GDK_KEY_m,          0,      0,      0,      0x26F,   /* LATIN SMALL LETTER TURNED M */
-  GDK_KEY_slash,  GDK_KEY_r,          0,      0,      0,      0x279,   /* LATIN SMALL LETTER TURNED R */
-  GDK_KEY_slash,  GDK_KEY_v,          0,      0,      0,      0x28C,   /* LATIN SMALL LETTER TURNED V */
-  GDK_KEY_slash,  GDK_KEY_w,          0,      0,      0,      0x28D,   /* LATIN SMALL LETTER TURNED W */
-  GDK_KEY_slash,  GDK_KEY_y,          0,      0,      0,      0x28E,   /* LATIN SMALL LETTER TRUEND Y*/
-  GDK_KEY_3,      0,              0,      0,      0,      0x292,       /* LATIN SMALL LETTER EZH */
-  GDK_KEY_colon,  0,              0,      0,      0,      0x2D0,       /* MODIFIER LETTER TRIANGULAR COLON */
-  GDK_KEY_A,      0,              0,      0,      0,      0x251,       /* LATIN SMALL LETTER ALPHA */
-  GDK_KEY_E,      0,              0,      0,      0,      0x25B,       /* LATIN SMALL LETTER OPEN E */
-  GDK_KEY_I,      0,              0,      0,      0,      0x26A,       /* LATIN LETTER SMALL CAPITAL I */
-  GDK_KEY_L,      0,              0,      0,      0,      0x29F,       /* LATIN LETTER SMALL CAPITAL L */
-  GDK_KEY_M,      0,              0,      0,      0,      0x28D,       /* LATIN SMALL LETTER TURNED W */
-  GDK_KEY_O,      0,              0,      0,      0,      0x04F,       /* LATIN LETTER SMALL CAPITAL OE */
-  GDK_KEY_O,      GDK_KEY_E,          0,      0,      0,      0x276,   /* LATIN LETTER SMALL CAPITAL OE */
-  GDK_KEY_R,      0,              0,      0,      0,      0x280,       /* LATIN LETTER SMALL CAPITAL R */
-  GDK_KEY_U,      0,              0,      0,      0,      0x28A,       /* LATIN SMALL LETTER UPSILON */
-  GDK_KEY_Y,      0,              0,      0,      0,      0x28F,       /* LATIN LETTER SMALL CAPITAL Y */
-  GDK_KEY_grave,  0,              0,      0,      0,      0x2CC,       /* MODIFIER LETTER LOW VERTICAL LINE */
-  GDK_KEY_a,      0,              0,      0,      0,      0x061,       /* LATIN SMALL LETTER A */
-  GDK_KEY_a,      GDK_KEY_e,          0,      0,      0,      0x0E6,   /* LATIN SMALL LETTER AE */
-  GDK_KEY_c,      0,              0,      0,      0,      0x063,    /* LATIN SMALL LETTER C */
-  GDK_KEY_c,      GDK_KEY_comma,      0,      0,      0,      0x0E7,    /* LATIN SMALL LETTER C WITH CEDILLA */
-  GDK_KEY_d,      0,              0,      0,      0,      0x064,       /* LATIN SMALL LETTER E */
-  GDK_KEY_d,      GDK_KEY_apostrophe, 0,      0,      0,      0x064,   /* LATIN SMALL LETTER D */
-  GDK_KEY_d,      GDK_KEY_h,          0,      0,      0,      0x0F0,   /* LATIN SMALL LETTER ETH */
-  GDK_KEY_e,      0,              0,      0,      0,      0x065,       /* LATIN SMALL LETTER E */
-  GDK_KEY_e,      GDK_KEY_minus,      0,      0,      0,      0x25A,   /* LATIN SMALL LETTER SCHWA WITH HOOK */
-  GDK_KEY_e,      GDK_KEY_bar,        0,      0,      0,      0x25A,   /* LATIN SMALL LETTER SCHWA WITH HOOK */
-  GDK_KEY_g,      0,              0,      0,      0,      0x067,       /* LATIN SMALL LETTER G */
-  GDK_KEY_g,      GDK_KEY_n,          0,      0,      0,      0x272,   /* LATIN SMALL LETTER N WITH LEFT HOOK */
-  GDK_KEY_i,      0,              0,      0,      0,      0x069,       /* LATIN SMALL LETTER I */
-  GDK_KEY_i,      GDK_KEY_minus,      0,      0,      0,      0x268,   /* LATIN SMALL LETTER I WITH STROKE */
-  GDK_KEY_n,      0,              0,      0,      0,      0x06e,       /* LATIN SMALL LETTER N */
-  GDK_KEY_n,      GDK_KEY_g,          0,      0,      0,      0x14B,   /* LATIN SMALL LETTER ENG */
-  GDK_KEY_o,      0,              0,      0,      0,      0x06f,       /* LATIN SMALL LETTER O */
-  GDK_KEY_o,      GDK_KEY_minus,      0,      0,      0,      0x275,   /* LATIN LETTER BARRED O */
-  GDK_KEY_o,      GDK_KEY_slash,      0,      0,      0,      0x0F8,   /* LATIN SMALL LETTER O WITH STROKE */
-  GDK_KEY_o,      GDK_KEY_e,          0,      0,      0,      0x153,   /* LATIN SMALL LIGATURE OE */
-  GDK_KEY_o,      GDK_KEY_bar,        0,      0,      0,      0x251,   /* LATIN SMALL LETTER ALPHA */
-  GDK_KEY_s,      0,              0,      0,      0,      0x073,       /* LATIN SMALL LETTER_ESH */
-  GDK_KEY_s,      GDK_KEY_h,          0,      0,      0,      0x283,   /* LATIN SMALL LETTER_ESH */
-  GDK_KEY_t,      0,              0,      0,      0,      0x074,       /* LATIN SMALL LETTER T */
-  GDK_KEY_t,      GDK_KEY_h,          0,      0,      0,      0x3B8,   /* GREEK SMALL LETTER THETA */
-  GDK_KEY_u,      0,              0,      0,      0,      0x075,       /* LATIN SMALL LETTER U */
-  GDK_KEY_u,      GDK_KEY_minus,      0,      0,      0,      0x289,   /* LATIN LETTER U BAR */
-  GDK_KEY_z,      0,              0,      0,      0,      0x07A,       /* LATIN SMALL LETTER Z */
-  GDK_KEY_z,      GDK_KEY_h,          0,      0,      0,      0x292,   /* LATIN SMALL LETTER EZH */
-  GDK_KEY_bar,    GDK_KEY_o,          0,      0,      0,      0x252,   /* LATIN LETTER TURNED ALPHA */
-
-  GDK_KEY_asciitilde, 0,          0,      0,      0,      0x303,    /* COMBINING TILDE */
-
-};
-
-static void
-ipa_class_init (GtkIMContextSimpleClass *class)
-{
-}
-
-static void
-ipa_init (GtkIMContextSimple *im_context)
-{
-  gtk_im_context_simple_add_table (im_context,
-                                  ipa_compose_seqs,
-                                  4,
-                                  G_N_ELEMENTS (ipa_compose_seqs) / (4 + 2));
-}
-
-static const GtkIMContextInfo ipa_info = { 
-  "ipa",                  /* ID */
-  NC_("input method menu", "IPA"), /* Human readable name */
-  GETTEXT_PACKAGE,                /* Translation domain */
-   GTK_LOCALEDIR,                 /* Dir for bindtextdomain (not strictly needed for "gtk+") */
-  ""                              /* Languages for which this module is the default */
-};
-
-static const GtkIMContextInfo *info_list[] = {
-  &ipa_info
-};
-
-#ifndef INCLUDE_IM_ipa
-#define MODULE_ENTRY(type, function) G_MODULE_EXPORT type im_module_ ## function
-#else
-#define MODULE_ENTRY(type, function) type _gtk_immodule_ipa_ ## function
-#endif
-
-MODULE_ENTRY (void, init) (GTypeModule *module)
-{
-  ipa_register_type (module);
-}
-
-MODULE_ENTRY (void, exit) (void)
-{
-}
-
-MODULE_ENTRY (void, list) (const GtkIMContextInfo ***contexts,
-                          int                      *n_contexts)
-{
-  *contexts = info_list;
-  *n_contexts = G_N_ELEMENTS (info_list);
-}
-
-MODULE_ENTRY (GtkIMContext *, create) (const gchar *context_id)
-{
-  if (strcmp (context_id, "ipa") == 0)
-    return g_object_new (type_ipa, NULL);
-  else
-    return NULL;
-}
diff --git a/modules/input/immultipress.c b/modules/input/immultipress.c
deleted file mode 100644 (file)
index 89608cb..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-/* Copyright (C) 2006 Openismus GmbH
- * 
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "config.h"
-
-#include "gtkimcontextmultipress.h"
-#include <gtk/gtkimmodule.h> /* For GtkIMContextInfo */
-#include <glib/gi18n.h>
-#include <string.h> /* For strcmp() */
-
-#define CONTEXT_ID "multipress"
-/** NOTE: Change the default language from "" to "*" to enable this input method by default for all locales.
- */
-static const GtkIMContextInfo info = { 
-  CONTEXT_ID,             /* ID */
-  NC_("input method menu", "Multipress"),     /* Human readable name */
-  GETTEXT_PACKAGE,        /* Translation domain. Defined in configure.ac */
-  MULTIPRESS_LOCALEDIR,           /* Dir for bindtextdomain (not strictly needed for "gtk+"). Defined in the Makefile.am */
-  ""                      /* Languages for which this module is the default */
-};
-
-static const GtkIMContextInfo *info_list[] = {
-  &info
-};
-
-#ifndef INCLUDE_IM_multipress
-#define MODULE_ENTRY(type, function) G_MODULE_EXPORT type im_module_ ## function
-#else
-#define MODULE_ENTRY(type, function) type _gtk_immodule_multipress_ ## function
-#endif
-
-MODULE_ENTRY (void, init) (GTypeModule *module)
-{
-  gtk_im_context_multipress_register_type(module);
-}
-
-MODULE_ENTRY (void, exit) (void)
-{
-}
-
-MODULE_ENTRY (void, list) (const GtkIMContextInfo ***contexts,
-                          int                      *n_contexts)
-{
-  *contexts = info_list;
-  *n_contexts = G_N_ELEMENTS (info_list);
-}
-
-MODULE_ENTRY (GtkIMContext *, create) (const gchar *context_id)
-{
-  if (strcmp (context_id, CONTEXT_ID) == 0)
-  {
-    GtkIMContext* imcontext = GTK_IM_CONTEXT(g_object_new (GTK_TYPE_IM_CONTEXT_MULTIPRESS, NULL));
-    return imcontext;
-  }
-  else
-    return NULL;
-}
diff --git a/modules/input/imthai.c b/modules/input/imthai.c
deleted file mode 100644 (file)
index 5a05a9a..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-/* GTK - The GIMP Toolkit
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library. If not, see <http://www.gnu.org/licenses/>.
- *
- * Author: Theppitak Karoonboonyanan <thep@linux.thai.net>
- *
- */
-
-#include "config.h"
-#include <string.h>
-
-#include <gdk/gdkkeysyms.h>
-
-#include "gtk/gtkintl.h"
-#include "gtk/gtkimmodule.h"
-#include "gtkimcontextthai.h"
-
-GType type_thai = 0;
-
-static const GtkIMContextInfo thai_info = { 
-  "thai",         /* ID */
-  NC_("input method menu", "Thai-Lao"),  /* Human readable name */
-  GETTEXT_PACKAGE, /* Translation domain */
-  GTK_LOCALEDIR,   /* Dir for bindtextdomain (not strictly needed for "gtk+") */
-  "lo:th"         /* Languages for which this module is the default */
-};
-
-static const GtkIMContextInfo *info_list[] = {
-  &thai_info
-};
-
-#ifndef INCLUDE_IM_thai
-#define MODULE_ENTRY(type, function) G_MODULE_EXPORT type im_module_ ## function
-#else
-#define MODULE_ENTRY(type, function) type _gtk_immodule_thai_ ## function
-#endif
-
-MODULE_ENTRY (void, init) (GTypeModule *module)
-{
-  gtk_im_context_thai_register_type (module);
-}
-
-MODULE_ENTRY (void, exit) (void)
-{
-}
-
-MODULE_ENTRY (void, list) (const GtkIMContextInfo ***contexts,
-                          int                      *n_contexts)
-{
-  *contexts = info_list;
-  *n_contexts = G_N_ELEMENTS (info_list);
-}
-
-MODULE_ENTRY (GtkIMContext *, create) (const gchar *context_id)
-{
-  if (strcmp (context_id, "thai") == 0)
-    return gtk_im_context_thai_new ();
-  else
-    return NULL;
-}
diff --git a/modules/input/imti-er.c b/modules/input/imti-er.c
deleted file mode 100644 (file)
index a95ed60..0000000
+++ /dev/null
@@ -1,489 +0,0 @@
-/* GTK - The GIMP Toolkit
- * Copyright (C) 2000 Red Hat Software
- * Copyright (C) 2000 SuSE Linux Ltd
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library. If not, see <http://www.gnu.org/licenses/>.
- *
- * Original author: Owen Taylor <otaylor@redhat.com>
- * 
- * Modified for Inuktitut - Robert Brady <robert@suse.co.uk>
- * 
- * Modified for Tigrigna - Daniel Yacob <locales@geez.org>
- *
- */
-
-#include "config.h"
-#include <stdio.h>
-#include <string.h>
-
-#include "gtk/gtk.h"
-#include "gdk/gdkkeysyms.h"
-
-#include "gtk/gtkimmodule.h"
-#include "gtk/gtkintl.h"
-
-GType type_ti_er_translit = 0;
-
-static void ti_er_class_init (GtkIMContextSimpleClass *class);
-static void ti_er_init (GtkIMContextSimple *im_context);
-
-static void
-ti_er_register_type (GTypeModule *module)
-{
-  const GTypeInfo object_info =
-  {
-    sizeof (GtkIMContextSimpleClass),
-    (GBaseInitFunc) NULL,
-    (GBaseFinalizeFunc) NULL,
-    (GClassInitFunc) ti_er_class_init,
-    NULL,           /* class_finalize */
-    NULL,           /* class_data */
-    sizeof (GtkIMContextSimple),
-    0,
-    (GInstanceInitFunc) ti_er_init,
-  };
-
-  type_ti_er_translit = 
-    g_type_module_register_type (module,
-                                GTK_TYPE_IM_CONTEXT_SIMPLE,
-                                "GtkIMContextTigrignaEritrea",
-                                &object_info, 0);
-}
-
-#define SYL(a,b) \
-  a,  0,  0, 0, 0, 0, b+5, \
-  a, 'A', 0, 0, 0, 0, b+3, \
-  a, 'E', 0, 0, 0, 0, b+4, \
-  a, 'I', 0, 0, 0, 0, b+2, \
-  a, 'O', 0, 0, 0, 0, b+6, \
-  a, 'U', 0, 0, 0, 0, b+1, \
-  a, 'a', 0, 0, 0, 0, b+3, \
-  a, 'e', 0, 0, 0, 0, b, \
-  a, 'e', 'e', 0, 0, 0, b+4, \
-  a, 'i', 0, 0, 0, 0, b+2, \
-  a, 'o', 0, 0, 0, 0, b+6, \
-  a, 'u', 0, 0, 0, 0, b+1,
-
-#define SYLW1(a,b) \
-  a,  0,  0, 0, 0, 0, b+5, \
-  a, 'A', 0, 0, 0, 0, b+3, \
-  a, 'E', 0, 0, 0, 0, b+4, \
-  a, 'I', 0, 0, 0, 0, b+2, \
-  a, 'O', 0, 0, 0, 0, b+6, \
-  a, 'U', 0, 0, 0, 0, b+1, \
-  a, 'W', 0, 0, 0, 0, b+7, \
-  a, 'W', 'A', 0, 0, 0, b+7, \
-  a, 'W', 'a', 0, 0, 0, b+7,
-#define SYLW2(a,b) \
-  a, 'a', 0, 0, 0, 0, b+3, \
-  a, 'e', 0, 0, 0, 0, b, \
-  a, 'e', 'e', 0, 0, 0, b+4, \
-  a, 'i', 0, 0, 0, 0, b+2, \
-  a, 'o', 0, 0, 0, 0, b+6, \
-  a, 'u', 0, 0, 0, 0, b+1, \
-  a, 'w', 'w',   0, 0, 0, b+7, \
-  a, 'w', 'w', 'a', 0, 0, b+7,
-
-#define SYLW(a,b) \
-  SYLW1(a,b)\
-  SYLW2(a,b)
-
-#define SYLWW(a,b) \
-  a,  0,  0, 0, 0, 0, b+5, \
-  a, 'A', 0, 0, 0, 0, b+3, \
-  a, 'E', 0, 0, 0, 0, b+4, \
-  a, 'I', 0, 0, 0, 0, b+2, \
-  a, 'O', 0, 0, 0, 0, b+6, \
-  a, 'O', 'O', 0, 0, 0, b+8, \
-  a, 'O', 'o', 0, 0, 0, b+8, \
-  a, 'U', 0, 0, 0, 0, b+1, \
-  a, 'W', 0, 0, 0, 0, b+11, \
-  a, 'W', '\'', 0, 0, 0, b+13, \
-  a, 'W', 'A', 0, 0, 0, b+11, \
-  a, 'W', 'E', 0, 0, 0, b+12, \
-  a, 'W', 'I', 0, 0, 0, b+10, \
-  a, 'W', 'U', 0, 0, 0, b+13, \
-  a, 'W', 'a', 0, 0, 0, b+11, \
-  a, 'W', 'e', 0, 0, 0, b+8, \
-  a, 'W', 'e', 'e', 0, 0, b+12, \
-  a, 'W', 'i', 0, 0, 0, b+10, \
-  a, 'W', 'u', 0, 0, 0, b+13, \
-  a, 'a', 0, 0, 0, 0, b+3, \
-  a, 'e', 0, 0, 0, 0, b, \
-  a, 'e', 'e', 0, 0, 0, b+4, \
-  a, 'i', 0, 0, 0, 0, b+2, \
-  a, 'o', 0, 0, 0, 0, b+6, \
-  a, 'o', 'o', 0, 0, 0, b+8, \
-  a, 'u', 0, 0, 0, 0, b+1, \
-  a, 'w', 'w', 0, 0, 0, b+11, \
-  a, 'w', 'w', '\'', 0, 0, b+13, \
-  a, 'w', 'w', 'E', 0, 0, b+12, \
-  a, 'w', 'w', 'a', 0, 0, b+11, \
-  a, 'w', 'w', 'e', 0, 0, b+8, \
-  a, 'w', 'w', 'e', 'e', 0, b+12, \
-  a, 'w', 'w', 'i', 0, 0, b+10, \
-  a, 'w', 'w', 'u', 0, 0, b+13,
-
-static guint16 ti_er_compose_seqs[] = {
-  /* do punctuation and numerals here */
-
-  '\'',   0, 0, 0, 0, 0, GDK_KEY_dead_grave,  /* hopefully this has no side effects */
-  '\'', '\'', 0, 0, 0, 0, GDK_KEY_apostrophe,
-  '\'', '1', 0, 0, 0, 0, 0x1369,
-  '\'', '1', '0', 0, 0, 0, 0x1372,
-  '\'', '1', '0', '0', 0, 0, 0x137b,
-  '\'', '1', '0', 'k', 0, 0, 0x137c,
-  /* '\'', '1', '0', '0', '0',  0, 0x137b,
-  '\'', '1', '0', '0', '0', '0', 0, 0x137c, */
-  '\'', '2', 0, 0, 0, 0, 0x136a,
-  '\'', '2', '0', 0, 0, 0, 0x1373,
-  '\'', '3', 0, 0, 0, 0, 0x136b,
-  '\'', '3', '0', 0, 0, 0, 0x1374,
-  '\'', '4', 0, 0, 0, 0, 0x136c,
-  '\'', '4', '0', 0, 0, 0, 0x1375,
-  '\'', '5', 0, 0, 0, 0, 0x136d,
-  '\'', '5', '0', 0, 0, 0, 0x1376,
-  '\'', '6', 0, 0, 0, 0, 0x136e,
-  '\'', '6', '0', 0, 0, 0, 0x1377,
-  '\'', '7', 0, 0, 0, 0, 0x136f,
-  '\'', '7', '0', 0, 0, 0, 0x1378,
-  '\'', '8', 0, 0, 0, 0, 0x1370,
-  '\'', '8', '0', 0, 0, 0, 0x1379,
-  '\'', '9', 0, 0, 0, 0, 0x1371,
-  '\'', '9', '0', 0, 0, 0, 0x137a,
-  ',',  0,  0, 0, 0, 0, 0x1363,
-  ',',  ',',  0, 0, 0, 0, ',',
-  '-',  0,  0, 0, 0, 0, '-',
-  '-',  ':',  0, 0, 0, 0, 0x1365,
-  ':',  0,  0, 0, 0, 0, 0x1361,
-  ':',  '-',  0, 0, 0, 0, 0x1366,
-  ':',  ':',  0, 0, 0, 0, 0x1362,
-  ':',  ':',  ':', 0, 0, 0, ':',
-  ':',  '|',  ':', 0, 0, 0, 0x1368,
-  ';',  0,  0, 0, 0, 0, 0x1364,
-  ';',  ';',  0, 0, 0, 0, ';',
-  '<',  0,  0, 0, 0, 0, '<',
-  '<',  '<',  0, 0, 0, 0, 0x00AB,
-  '>',  0,  0, 0, 0, 0, '>',
-  '>',  '>',  0, 0, 0, 0, 0x00BB,
-  '?',  0,  0, 0, 0, 0, 0x1367,
-  '?',  '?',  0, 0, 0, 0, '?',
-  'A',  0,  0,  0,  0, 0, 0x12A0,
-  'A','A',  0,  0,  0, 0, 0x12D0,
-  SYLW('B', 0x1260)
-  SYLW('C', 0x1328)
-  SYLW('D', 0x12f8)
-  'E',  0,  0,  0,  0, 0, 0x12A4,
-  'E','E',  0,  0,  0, 0, 0x12D4,
-  SYLW1('F', 0x1348)
-  'F', 'Y',   0,  0,  0, 0, 0x135A,
-  'F', 'Y', 'A',  0,  0, 0, 0x135A,
-  'F', 'Y', 'a',  0,  0, 0, 0x135A,
-  SYLW2('F', 0x1348)
-  SYL('G', 0x1318)
-  SYLW('H', 0x1210)
-  'I',  0,  0,  0,  0, 0, 0x12A5,
-  'I','A',  0,  0,  0, 0, 0x12A3,
-  'I','E',  0,  0,  0, 0, 0x12A4,
-  'I','I',  0,  0,  0, 0, 0x12D5,
-  'I','I','E',  0,  0, 0, 0x12D4,
-  'I','I','a',  0,  0, 0, 0x12D3,
-  'I','I','e',  0,  0, 0, 0x12D0,
-  'I','I','i',  0,  0, 0, 0x12D2,
-  'I','I','o',  0,  0, 0, 0x12D6,
-  'I','I','u',  0,  0, 0, 0x12D1,
-  'I','O',  0,  0,  0, 0, 0x12A6,
-  'I','U',  0,  0,  0, 0, 0x12A1,
-  'I','W',  0,  0,  0, 0, 0x12A7,
-  'I','a',  0,  0,  0, 0, 0x12A3,
-  'I','e',  0,  0,  0, 0, 0x12A0,
-  'I','i',  0,  0,  0, 0, 0x12A2,
-  'I','o',  0,  0,  0, 0, 0x12A6,
-  'I','u',  0,  0,  0, 0, 0x12A1,
-  SYLWW('K', 0x12b8)
-  SYLW('L', 0x1208)
-  SYLW1('M', 0x1218)
-  'M', 'Y',   0,  0,  0, 0, 0x1359,
-  'M', 'Y', 'A',  0,  0, 0, 0x1359,
-  'M', 'Y', 'a',  0,  0, 0, 0x1359,
-  SYLW2('M', 0x1218)
-  SYLW('N', 0x1298)
-  'O',  0,  0,  0,  0, 0, 0x12A6,
-  'O','O',  0,  0,  0, 0, 0x12D6,
-  SYLW('P', 0x1330)
-  SYLWW('Q', 0x1250) 
-  SYLW1('R', 0x1228)
-  'R', 'Y',   0,  0,  0, 0, 0x1358,
-  'R', 'Y', 'A',  0,  0, 0, 0x1358,
-  'R', 'Y', 'a',  0,  0, 0, 0x1358,
-  SYLW2('R', 0x1228)
-  'S',  0,  0, 0, 0, 0, 0x1338+5,
-  'S', 'A', 0, 0, 0, 0, 0x1338+3,
-  'S', 'E', 0, 0, 0, 0, 0x1338+4,
-  'S', 'I', 0, 0, 0, 0, 0x1338+2,
-  'S', 'O', 0, 0, 0, 0, 0x1338+6,
-  'S', 'S', 0, 0, 0, 0, 0x1340+5,
-  'S', 'S', 'A', 0, 0, 0, 0x1340+3,
-  'S', 'S', 'E', 0, 0, 0, 0x1340+4,
-  'S', 'S', 'I', 0, 0, 0, 0x1340+2,
-  'S', 'S', 'O', 0, 0, 0, 0x1340+6,
-  'S', 'S', 'U', 0, 0, 0, 0x1340+1,
-  'S', 'S', 'a', 0, 0, 0, 0x1340+3,
-  'S', 'S', 'e', 0, 0, 0, 0x1340,
-  'S', 'S', 'e', 'e', 0, 0, 0x1340+4,
-  'S', 'S', 'i', 0, 0, 0, 0x1340+2,
-  'S', 'S', 'o', 0, 0, 0, 0x1340+6,
-  'S', 'S', 'u', 0, 0, 0, 0x1340+1,
-  'S', 'U', 0, 0, 0, 0, 0x1338+1,
-  'S', 'W', 0, 0, 0, 0, 0x1338+7,
-  'S', 'W', 'A', 0, 0, 0, 0x1338+7,
-  'S', 'W', 'a', 0, 0, 0, 0x1338+7,
-  'S', 'a', 0, 0, 0, 0, 0x1338+3,
-  'S', 'e', 0, 0, 0, 0, 0x1338,
-  'S', 'e', 'e', 0, 0, 0, 0x1338+4,
-  'S', 'i', 0, 0, 0, 0, 0x1338+2,
-  'S', 'o', 0, 0, 0, 0, 0x1338+6,
-  'S', 'u', 0, 0, 0, 0, 0x1338+1,
-  'S', 'w', 'w',   0, 0, 0, 0x1338+7,
-  'S', 'w', 'w', 'a', 0, 0, 0x1338+7,
-  SYLW('T', 0x1320)
-  'U',  0,  0,  0,  0, 0, 0x12A1,
-  'U','U',  0,  0,  0, 0, 0x12D1,
-  SYLW('V', 0x1268)
-  SYL('W', 0x12c8)
-  SYLW('X', 0x1238)
-  SYL('Y', 0x12e8)
-  SYLW('Z', 0x12e0)
-
-  /* much, much work to be done for lone vowels */
-  'a',  0,  0,  0,  0, 0, 0x12A3,
-  'a','a',  0,  0,  0, 0, 0x12D3,
-  'a','a','a',  0,  0, 0, 0x12D0,
-  'a','a','a','a',  0, 0, 0x12A0,
-  SYLW('b', 0x1260)
-  SYLW('c', 0x1278)
-  SYLW('d', 0x12f0)
-  'e',  0,  0,  0,  0, 0, 0x12A5,
-  'e','A',  0,  0,  0, 0, 0x12A3,
-  'e','E',  0,  0,  0, 0, 0x12A4,
-  'e','I',  0,  0,  0, 0, 0x12A2,
-  'e','O',  0,  0,  0, 0, 0x12A6,
-  'e','U',  0,  0,  0, 0, 0x12A1,
-  'e','W',  0,  0,  0, 0, 0x12A7,
-  'e','a',  0,  0,  0, 0, 0x12D0,
-  'e','e',  0,  0,  0, 0, 0x12D5,
-  'e','e','E',  0,  0, 0, 0x12D4,
-  'e','e','a',  0,  0, 0, 0x12D3,
-  'e','e','e',  0,  0, 0, 0x12D0,
-  'e','e','i',  0,  0, 0, 0x12D2,
-  'e','e','o',  0,  0, 0, 0x12D6,
-  'e','e','u',  0,  0, 0, 0x12D1,
-  'e','i',  0,  0,  0, 0, 0x12A2,
-  'e','o',  0,  0,  0, 0, 0x12A6,
-  'e','u',  0,  0,  0, 0, 0x12A1,
-  SYLW1('f', 0x1348)
-  'f', 'Y',   0,  0,  0, 0, 0x135A,
-  'f', 'Y', 'A',  0,  0, 0, 0x135A,
-  'f', 'Y', 'a',  0,  0, 0, 0x135A,
-  SYLW2('f', 0x1348)
-  SYLWW('g', 0x1308)
-  'h',  0,  0, 0, 0, 0, 0x1200+5,
-  'h', 'A', 0, 0, 0, 0, 0x1200+3,
-  'h', 'E', 0, 0, 0, 0, 0x1200+4,
-  'h', 'I', 0, 0, 0, 0, 0x1200+2,
-  'h', 'O', 0, 0, 0, 0, 0x1200+6,
-  'h', 'U', 0, 0, 0, 0, 0x1200+1,
-  'h', 'W', 0, 0, 0, 0, 0x1280+11,
-  'h', 'W', '\'', 0, 0, 0, 0x1280+13,
-  'h', 'W', 'A', 0, 0, 0, 0x1280+11,
-  'h', 'W', 'E', 0, 0, 0, 0x1280+12,
-  'h', 'W', 'I', 0, 0, 0, 0x1280+10,
-  'h', 'W', 'U', 0, 0, 0, 0x1280+13,
-  'h', 'W', 'a', 0, 0, 0, 0x1280+11,
-  'h', 'W', 'e', 0, 0, 0, 0x1280+8,
-  'h', 'W', 'e', 'e', 0, 0, 0x1280+12,
-  'h', 'W', 'i', 0, 0, 0, 0x1280+10,
-  'h', 'W', 'u', 0, 0, 0, 0x1280+13,
-  'h', 'a', 0, 0, 0, 0, 0x1200+3,
-  'h', 'e', 0, 0, 0, 0, 0x1200,
-  'h', 'e', 'e', 0, 0, 0, 0x1200+4,
-  'h', 'h', 0, 0, 0, 0, 0x1280+5,
-  'h', 'h', 'A', 0, 0, 0, 0x1280+3,
-  'h', 'h', 'E', 0, 0, 0, 0x1280+4,
-  'h', 'h', 'I', 0, 0, 0, 0x1280+2,
-  'h', 'h', 'O', 0, 0, 0, 0x1280+6,
-  'h', 'h', 'O', 'O', 0, 0, 0x1280+8,
-  'h', 'h', 'U', 0, 0, 0, 0x1280+1,
-  'h', 'h', 'W', 0, 0, 0, 0x1280+11,
-  'h', 'h', 'W', '\'', 0, 0, 0x1280+13,
-  'h', 'h', 'W', 'A', 0, 0, 0x1280+11,
-  'h', 'h', 'W', 'E', 0, 0, 0x1280+12,
-  'h', 'h', 'W', 'I', 0, 0, 0x1280+10,
-  'h', 'h', 'W', 'U', 0, 0, 0x1280+13,
-  'h', 'h', 'W', 'a', 0, 0, 0x1280+11,
-  'h', 'h', 'W', 'e', 0, 0, 0x1280+8,
-  'h', 'h', 'W', 'e', 'e', 0, 0x1280+12,
-  'h', 'h', 'W', 'i', 0, 0, 0x1280+10,
-  'h', 'h', 'W', 'u', 0, 0, 0x1280+13,
-  'h', 'h', 'a', 0, 0, 0, 0x1280+3,
-  'h', 'h', 'e', 0, 0, 0, 0x1280,
-  'h', 'h', 'e', 'e', 0, 0, 0x1280+4,
-  'h', 'h', 'i', 0, 0, 0, 0x1280+2,
-  'h', 'h', 'o', 0, 0, 0, 0x1280+6,
-  'h', 'h', 'o', 'o', 0, 0, 0x1280+8,
-  'h', 'h', 'u', 0, 0, 0, 0x1280+1,
-  'h', 'h', 'w', 'w',   0, 0, 0x1280+11,
-  'h', 'h', 'w', 'w', 'a', 0, 0x1280+11,
-  'h', 'h', 'w', 'w', 0, 0, 0x1280+11,
-  'h', 'h', 'w', 'w', '\'', 0, 0x1280+13,
-  'h', 'h', 'w', 'w', 'E', 0, 0x1280+12,
-  'h', 'h', 'w', 'w', 'a', 0, 0x1280+11,
-  'h', 'h', 'w', 'w', 'e', 0, 0x1280+8,
-  /* 'h', 'h', 'w', 'w', 'e', 'e', 0, 0x1280+12,  too long for now */
-  'h', 'h', 'w', 'w', 'i', 0, 0x1280+10,
-  'h', 'h', 'w', 'w', 'u', 0, 0x1280+13,
-  'h', 'i', 0, 0, 0, 0, 0x1200+2,
-  'h', 'o', 0, 0, 0, 0, 0x1200+6,
-  'h', 'u', 0, 0, 0, 0, 0x1200+1,
-  'h', 'w', 'w',   0, 0, 0, 0x1280+11,
-  'h', 'w', 'w', 'a', 0, 0, 0x1280+11,
-  'h', 'w', 'w', 0, 0, 0, 0x1280+11,
-  'h', 'w', 'w', '\'', 0, 0, 0x1280+13,
-  'h', 'w', 'w', 'E', 0, 0, 0x1280+12,
-  'h', 'w', 'w', 'a', 0, 0, 0x1280+11,
-  'h', 'w', 'w', 'e', 0, 0, 0x1280+8,
-  'h', 'w', 'w', 'e', 'e', 0, 0x1280+12,
-  'h', 'w', 'w', 'i', 0, 0, 0x1280+10,
-  'h', 'w', 'w', 'u', 0, 0, 0x1280+13,
-  'i',  0,  0,  0,  0, 0, 0x12A2,
-  'i', 'i', 0,  0,  0, 0, 0x12D2,
-  SYLW('j', 0x1300)
-  SYLWW('k', 0x12a8)
-  SYLW('l', 0x1208)
-  SYLW1('m', 0x1218)
-  'm', 'Y',   0,  0,  0, 0, 0x1359,
-  'm', 'Y', 'A',  0,  0, 0, 0x1359,
-  'm', 'Y', 'a',  0,  0, 0, 0x1359,
-  SYLW2('m', 0x1218)
-  SYLW('n', 0x1290)
-  'o',  0,  0,  0,  0, 0, 0x12A6,
-  'o','o',  0,  0,  0, 0, 0x12D6,
-  SYLW('p', 0x1350)
-  SYLWW('q', 0x1240)
-  SYLW1('r', 0x1228)
-  'r', 'Y',   0,  0,  0, 0, 0x1358,
-  'r', 'Y', 'A',  0,  0, 0, 0x1358,
-  'r', 'Y', 'a',  0,  0, 0, 0x1358,
-  SYLW2('r', 0x1228)
-  's',  0,  0, 0, 0, 0, 0x1230+5,
-  's', 'A', 0, 0, 0, 0, 0x1230+3,
-  's', 'E', 0, 0, 0, 0, 0x1230+4,
-  's', 'I', 0, 0, 0, 0, 0x1230+2,
-  's', 'O', 0, 0, 0, 0, 0x1230+6,
-  's', 'U', 0, 0, 0, 0, 0x1230+1,
-  's', 'W', 0, 0, 0, 0, 0x1230+7,
-  's', 'W', 'A', 0, 0, 0, 0x1230+7,
-  's', 'W', 'a', 0, 0, 0, 0x1230+7,
-  's', 'a', 0, 0, 0, 0, 0x1230+3,
-  's', 'e', 0, 0, 0, 0, 0x1230,
-  's', 'e', 'e', 0, 0, 0, 0x1230+4,
-  's', 'i', 0, 0, 0, 0, 0x1230+2,
-  's', 'o', 0, 0, 0, 0, 0x1230+6,
-  's', 's', 0, 0, 0, 0, 0x1220+5,
-  's', 's', 'A', 0, 0, 0, 0x1220+3,
-  's', 's', 'E', 0, 0, 0, 0x1220+4,
-  's', 's', 'I', 0, 0, 0, 0x1220+2,
-  's', 's', 'O', 0, 0, 0, 0x1220+6,
-  's', 's', 'U', 0, 0, 0, 0x1220+1,
-  's', 's', 'W', 0, 0, 0, 0x1220+7,
-  's', 's', 'W', 'A', 0, 0, 0x1220+7,
-  's', 's', 'W', 'a', 0, 0, 0x1220+7,
-  's', 's', 'a', 0, 0, 0, 0x1220+3,
-  's', 's', 'e', 0, 0, 0, 0x1220,
-  's', 's', 'e', 'e', 0, 0, 0x1220+4,
-  's', 's', 'i', 0, 0, 0, 0x1220+2,
-  's', 's', 'o', 0, 0, 0, 0x1220+6,
-  's', 's', 'u', 0, 0, 0, 0x1220+1,
-  's', 's', 'w', 'w', 0, 0, 0x1220+7,
-  's', 's', 'w', 'w', 'a', 0, 0x1220+7,
-  's', 'u', 0, 0, 0, 0, 0x1230+1,
-  's', 'w', 'w',   0, 0, 0, 0x1230+7,
-  's', 'w', 'w', 'a', 0, 0, 0x1230+7,
-  SYLW('t', 0x1270)
-  'u',  0,  0,  0,  0, 0, 0x12A1,
-  'u','u',  0,  0,  0, 0, 0x12D1,
-  SYLW('v', 0x1268)
-  SYL('w', 0x12c8)
-  SYLW('x', 0x1238)
-  SYL('y', 0x12e8)
-  SYLW('z', 0x12d8)
-  GDK_KEY_Shift_L, GDK_KEY_space, 0, 0, 0, 0, 0x1361,
-  GDK_KEY_Shift_R, GDK_KEY_space, 0, 0, 0, 0, 0x1361,
-};
-
-static void
-ti_er_class_init (GtkIMContextSimpleClass *class)
-{
-}
-
-static void
-ti_er_init (GtkIMContextSimple *im_context)
-{
-  gtk_im_context_simple_add_table (im_context,
-                                  ti_er_compose_seqs,
-                                  5,
-                                  G_N_ELEMENTS (ti_er_compose_seqs) / (5 + 2));
-}
-
-static const GtkIMContextInfo ti_er_info = { 
-  "ti_er",                /* ID */
-  NC_("input method menu", "Tigrigna-Eritrean (EZ+)"), /* Human readable name */
-  GETTEXT_PACKAGE,        /* Translation domain */
-   GTK_LOCALEDIR,         /* Dir for bindtextdomain (not strictly needed for "gtk+") */
-  "ti"                    /* Languages for which this module is the default */
-};
-
-static const GtkIMContextInfo *info_list[] = {
-  &ti_er_info
-};
-
-#ifndef INCLUDE_IM_ti_er
-#define MODULE_ENTRY(type, function) G_MODULE_EXPORT type im_module_ ## function
-#else
-#define MODULE_ENTRY(type, function) type _gtk_immodule_ti_er_ ## function
-#endif
-
-MODULE_ENTRY (void, init) (GTypeModule *module)
-{
-  ti_er_register_type (module);
-}
-
-MODULE_ENTRY (void, exit) (void)
-{
-}
-
-MODULE_ENTRY (void, list) (const GtkIMContextInfo ***contexts,
-                          int                      *n_contexts)
-{
-  *contexts = info_list;
-  *n_contexts = G_N_ELEMENTS (info_list);
-}
-
-MODULE_ENTRY (GtkIMContext *, create) (const gchar *context_id)
-{
-  if (strcmp (context_id, "ti_er") == 0)
-    return g_object_new (type_ti_er_translit, NULL);
-  else
-    return NULL;
-}
diff --git a/modules/input/imti-et.c b/modules/input/imti-et.c
deleted file mode 100644 (file)
index 0030020..0000000
+++ /dev/null
@@ -1,489 +0,0 @@
-/* GTK - The GIMP Toolkit
- * Copyright (C) 2000 Red Hat Software
- * Copyright (C) 2000 SuSE Linux Ltd
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library. If not, see <http://www.gnu.org/licenses/>.
- *
- * Original author: Owen Taylor <otaylor@redhat.com>
- * 
- * Modified for Inuktitut - Robert Brady <robert@suse.co.uk>
- * 
- * Modified for Tigrigna - Daniel Yacob <locales@geez.org>
- *
- */
-
-#include "config.h"
-#include <stdio.h>
-#include <string.h>
-
-#include "gtk/gtk.h"
-#include "gdk/gdkkeysyms.h"
-
-#include "gtk/gtkimmodule.h"
-#include "gtk/gtkintl.h"
-
-GType type_ti_et_translit = 0;
-
-static void ti_et_class_init (GtkIMContextSimpleClass *class);
-static void ti_et_init (GtkIMContextSimple *im_context);
-
-static void
-ti_et_register_type (GTypeModule *module)
-{
-  const GTypeInfo object_info =
-  {
-    sizeof (GtkIMContextSimpleClass),
-    (GBaseInitFunc) NULL,
-    (GBaseFinalizeFunc) NULL,
-    (GClassInitFunc) ti_et_class_init,
-    NULL,           /* class_finalize */
-    NULL,           /* class_data */
-    sizeof (GtkIMContextSimple),
-    0,
-    (GInstanceInitFunc) ti_et_init,
-  };
-
-  type_ti_et_translit = 
-    g_type_module_register_type (module,
-                                GTK_TYPE_IM_CONTEXT_SIMPLE,
-                                "GtkIMContextTigrignaEthiopia",
-                                &object_info, 0);
-}
-
-#define SYL(a,b) \
-  a,  0,  0, 0, 0, 0, b+5, \
-  a, 'A', 0, 0, 0, 0, b+3, \
-  a, 'E', 0, 0, 0, 0, b+4, \
-  a, 'I', 0, 0, 0, 0, b+2, \
-  a, 'O', 0, 0, 0, 0, b+6, \
-  a, 'U', 0, 0, 0, 0, b+1, \
-  a, 'a', 0, 0, 0, 0, b+3, \
-  a, 'e', 0, 0, 0, 0, b, \
-  a, 'e', 'e', 0, 0, 0, b+4, \
-  a, 'i', 0, 0, 0, 0, b+2, \
-  a, 'o', 0, 0, 0, 0, b+6, \
-  a, 'u', 0, 0, 0, 0, b+1,
-
-#define SYLW1(a,b) \
-  a,  0,  0, 0, 0, 0, b+5, \
-  a, 'A', 0, 0, 0, 0, b+3, \
-  a, 'E', 0, 0, 0, 0, b+4, \
-  a, 'I', 0, 0, 0, 0, b+2, \
-  a, 'O', 0, 0, 0, 0, b+6, \
-  a, 'U', 0, 0, 0, 0, b+1, \
-  a, 'W', 0, 0, 0, 0, b+7, \
-  a, 'W', 'A', 0, 0, 0, b+7, \
-  a, 'W', 'a', 0, 0, 0, b+7,
-#define SYLW2(a,b) \
-  a, 'a', 0, 0, 0, 0, b+3, \
-  a, 'e', 0, 0, 0, 0, b, \
-  a, 'e', 'e', 0, 0, 0, b+4, \
-  a, 'i', 0, 0, 0, 0, b+2, \
-  a, 'o', 0, 0, 0, 0, b+6, \
-  a, 'u', 0, 0, 0, 0, b+1, \
-  a, 'w', 'w',   0, 0, 0, b+7, \
-  a, 'w', 'w', 'a', 0, 0, b+7,
-
-#define SYLW(a,b) \
-  SYLW1(a,b)\
-  SYLW2(a,b)
-
-#define SYLWW(a,b) \
-  a,  0,  0, 0, 0, 0, b+5, \
-  a, 'A', 0, 0, 0, 0, b+3, \
-  a, 'E', 0, 0, 0, 0, b+4, \
-  a, 'I', 0, 0, 0, 0, b+2, \
-  a, 'O', 0, 0, 0, 0, b+6, \
-  a, 'O', 'O', 0, 0, 0, b+8, \
-  a, 'O', 'o', 0, 0, 0, b+8, \
-  a, 'U', 0, 0, 0, 0, b+1, \
-  a, 'W', 0, 0, 0, 0, b+11, \
-  a, 'W', '\'', 0, 0, 0, b+13, \
-  a, 'W', 'A', 0, 0, 0, b+11, \
-  a, 'W', 'E', 0, 0, 0, b+12, \
-  a, 'W', 'I', 0, 0, 0, b+10, \
-  a, 'W', 'U', 0, 0, 0, b+13, \
-  a, 'W', 'a', 0, 0, 0, b+11, \
-  a, 'W', 'e', 0, 0, 0, b+8, \
-  a, 'W', 'e', 'e', 0, 0, b+12, \
-  a, 'W', 'i', 0, 0, 0, b+10, \
-  a, 'W', 'u', 0, 0, 0, b+13, \
-  a, 'a', 0, 0, 0, 0, b+3, \
-  a, 'e', 0, 0, 0, 0, b, \
-  a, 'e', 'e', 0, 0, 0, b+4, \
-  a, 'i', 0, 0, 0, 0, b+2, \
-  a, 'o', 0, 0, 0, 0, b+6, \
-  a, 'o', 'o', 0, 0, 0, b+8, \
-  a, 'u', 0, 0, 0, 0, b+1, \
-  a, 'w', 'w', 0, 0, 0, b+11, \
-  a, 'w', 'w', '\'', 0, 0, b+13, \
-  a, 'w', 'w', 'E', 0, 0, b+12, \
-  a, 'w', 'w', 'a', 0, 0, b+11, \
-  a, 'w', 'w', 'e', 0, 0, b+8, \
-  a, 'w', 'w', 'e', 'e', 0, b+12, \
-  a, 'w', 'w', 'i', 0, 0, b+10, \
-  a, 'w', 'w', 'u', 0, 0, b+13,
-
-static guint16 ti_et_compose_seqs[] = {
-  /* do punctuation and numerals here */
-
-  '\'',   0, 0, 0, 0, 0, GDK_KEY_dead_grave,  /* hopefully this has no side effects */
-  '\'', '\'', 0, 0, 0, 0, GDK_KEY_apostrophe,
-  '\'', '1', 0, 0, 0, 0, 0x1369,
-  '\'', '1', '0', 0, 0, 0, 0x1372,
-  '\'', '1', '0', '0', 0, 0, 0x137b,
-  '\'', '1', '0', 'k', 0, 0, 0x137c,
-  /* '\'', '1', '0', '0', '0',  0, 0x137b,
-  '\'', '1', '0', '0', '0', '0', 0, 0x137c, */
-  '\'', '2', 0, 0, 0, 0, 0x136a,
-  '\'', '2', '0', 0, 0, 0, 0x1373,
-  '\'', '3', 0, 0, 0, 0, 0x136b,
-  '\'', '3', '0', 0, 0, 0, 0x1374,
-  '\'', '4', 0, 0, 0, 0, 0x136c,
-  '\'', '4', '0', 0, 0, 0, 0x1375,
-  '\'', '5', 0, 0, 0, 0, 0x136d,
-  '\'', '5', '0', 0, 0, 0, 0x1376,
-  '\'', '6', 0, 0, 0, 0, 0x136e,
-  '\'', '6', '0', 0, 0, 0, 0x1377,
-  '\'', '7', 0, 0, 0, 0, 0x136f,
-  '\'', '7', '0', 0, 0, 0, 0x1378,
-  '\'', '8', 0, 0, 0, 0, 0x1370,
-  '\'', '8', '0', 0, 0, 0, 0x1379,
-  '\'', '9', 0, 0, 0, 0, 0x1371,
-  '\'', '9', '0', 0, 0, 0, 0x137a,
-  ',',  0,  0, 0, 0, 0, 0x1363,
-  ',',  ',',  0, 0, 0, 0, ',',
-  '-',  0,  0, 0, 0, 0, '-',
-  '-',  ':',  0, 0, 0, 0, 0x1365,
-  ':',  0,  0, 0, 0, 0, 0x1361,
-  ':',  '-',  0, 0, 0, 0, 0x1366,
-  ':',  ':',  0, 0, 0, 0, 0x1362,
-  ':',  ':',  ':', 0, 0, 0, ':',
-  ':',  '|',  ':', 0, 0, 0, 0x1368,
-  ';',  0,  0, 0, 0, 0, 0x1364,
-  ';',  ';',  0, 0, 0, 0, ';',
-  '<',  0,  0, 0, 0, 0, '<',
-  '<',  '<',  0, 0, 0, 0, 0x00AB,
-  '>',  0,  0, 0, 0, 0, '>',
-  '>',  '>',  0, 0, 0, 0, 0x00BB,
-  '?',  0,  0, 0, 0, 0, '?',
-  '?',  '?',  0, 0, 0, 0, 0x1367,
-  'A',  0,  0,  0,  0, 0, 0x12A0,
-  'A','A',  0,  0,  0, 0, 0x12D0,
-  SYLW('B', 0x1260)
-  SYLW('C', 0x1328)
-  SYLW('D', 0x12f8)
-  'E',  0,  0,  0,  0, 0, 0x12A4,
-  'E','E',  0,  0,  0, 0, 0x12D4,
-  SYLW1('F', 0x1348)
-  'F', 'Y',   0,  0,  0, 0, 0x135A,
-  'F', 'Y', 'A',  0,  0, 0, 0x135A,
-  'F', 'Y', 'a',  0,  0, 0, 0x135A,
-  SYLW2('F', 0x1348)
-  SYL('G', 0x1318)
-  SYLW('H', 0x1210)
-  'I',  0,  0,  0,  0, 0, 0x12A5,
-  'I','A',  0,  0,  0, 0, 0x12A3,
-  'I','E',  0,  0,  0, 0, 0x12A4,
-  'I','I',  0,  0,  0, 0, 0x12D5,
-  'I','I','E',  0,  0, 0, 0x12D4,
-  'I','I','a',  0,  0, 0, 0x12D3,
-  'I','I','e',  0,  0, 0, 0x12D0,
-  'I','I','i',  0,  0, 0, 0x12D2,
-  'I','I','o',  0,  0, 0, 0x12D6,
-  'I','I','u',  0,  0, 0, 0x12D1,
-  'I','O',  0,  0,  0, 0, 0x12A6,
-  'I','U',  0,  0,  0, 0, 0x12A1,
-  'I','W',  0,  0,  0, 0, 0x12A7,
-  'I','a',  0,  0,  0, 0, 0x12A3,
-  'I','e',  0,  0,  0, 0, 0x12A0,
-  'I','i',  0,  0,  0, 0, 0x12A2,
-  'I','o',  0,  0,  0, 0, 0x12A6,
-  'I','u',  0,  0,  0, 0, 0x12A1,
-  SYLWW('K', 0x12b8)
-  SYLW('L', 0x1208)
-  SYLW1('M', 0x1218)
-  'M', 'Y',   0,  0,  0, 0, 0x1359,
-  'M', 'Y', 'A',  0,  0, 0, 0x1359,
-  'M', 'Y', 'a',  0,  0, 0, 0x1359,
-  SYLW2('M', 0x1218)
-  SYLW('N', 0x1298)
-  'O',  0,  0,  0,  0, 0, 0x12A6,
-  'O','O',  0,  0,  0, 0, 0x12D6,
-  SYLW('P', 0x1330)
-  SYLWW('Q', 0x1250) 
-  SYLW1('R', 0x1228)
-  'R', 'Y',   0,  0,  0, 0, 0x1358,
-  'R', 'Y', 'A',  0,  0, 0, 0x1358,
-  'R', 'Y', 'a',  0,  0, 0, 0x1358,
-  SYLW2('R', 0x1228)
-  'S',  0,  0, 0, 0, 0, 0x1338+5,
-  'S', 'A', 0, 0, 0, 0, 0x1338+3,
-  'S', 'E', 0, 0, 0, 0, 0x1338+4,
-  'S', 'I', 0, 0, 0, 0, 0x1338+2,
-  'S', 'O', 0, 0, 0, 0, 0x1338+6,
-  'S', 'S', 0, 0, 0, 0, 0x1340+5,
-  'S', 'S', 'A', 0, 0, 0, 0x1340+3,
-  'S', 'S', 'E', 0, 0, 0, 0x1340+4,
-  'S', 'S', 'I', 0, 0, 0, 0x1340+2,
-  'S', 'S', 'O', 0, 0, 0, 0x1340+6,
-  'S', 'S', 'U', 0, 0, 0, 0x1340+1,
-  'S', 'S', 'a', 0, 0, 0, 0x1340+3,
-  'S', 'S', 'e', 0, 0, 0, 0x1340,
-  'S', 'S', 'e', 'e', 0, 0, 0x1340+4,
-  'S', 'S', 'i', 0, 0, 0, 0x1340+2,
-  'S', 'S', 'o', 0, 0, 0, 0x1340+6,
-  'S', 'S', 'u', 0, 0, 0, 0x1340+1,
-  'S', 'U', 0, 0, 0, 0, 0x1338+1,
-  'S', 'W', 0, 0, 0, 0, 0x1338+7,
-  'S', 'W', 'A', 0, 0, 0, 0x1338+7,
-  'S', 'W', 'a', 0, 0, 0, 0x1338+7,
-  'S', 'a', 0, 0, 0, 0, 0x1338+3,
-  'S', 'e', 0, 0, 0, 0, 0x1338,
-  'S', 'e', 'e', 0, 0, 0, 0x1338+4,
-  'S', 'i', 0, 0, 0, 0, 0x1338+2,
-  'S', 'o', 0, 0, 0, 0, 0x1338+6,
-  'S', 'u', 0, 0, 0, 0, 0x1338+1,
-  'S', 'w', 'w',   0, 0, 0, 0x1338+7,
-  'S', 'w', 'w', 'a', 0, 0, 0x1338+7,
-  SYLW('T', 0x1320)
-  'U',  0,  0,  0,  0, 0, 0x12A1,
-  'U','U',  0,  0,  0, 0, 0x12D1,
-  SYLW('V', 0x1268)
-  SYL('W', 0x12c8)
-  SYLW('X', 0x1238)
-  SYL('Y', 0x12e8)
-  SYLW('Z', 0x12e0)
-
-  /* much, much work to be done for lone vowels */
-  'a',  0,  0,  0,  0, 0, 0x12A3,
-  'a','a',  0,  0,  0, 0, 0x12D3,
-  'a','a','a',  0,  0, 0, 0x12D0,
-  'a','a','a','a',  0, 0, 0x12A0,
-  SYLW('b', 0x1260)
-  SYLW('c', 0x1278)
-  SYLW('d', 0x12f0)
-  'e',  0,  0,  0,  0, 0, 0x12A5,
-  'e','A',  0,  0,  0, 0, 0x12A3,
-  'e','E',  0,  0,  0, 0, 0x12A4,
-  'e','I',  0,  0,  0, 0, 0x12A2,
-  'e','O',  0,  0,  0, 0, 0x12A6,
-  'e','U',  0,  0,  0, 0, 0x12A1,
-  'e','W',  0,  0,  0, 0, 0x12A7,
-  'e','a',  0,  0,  0, 0, 0x12D0,
-  'e','e',  0,  0,  0, 0, 0x12D5,
-  'e','e','E',  0,  0, 0, 0x12D4,
-  'e','e','a',  0,  0, 0, 0x12D3,
-  'e','e','e',  0,  0, 0, 0x12D0,
-  'e','e','i',  0,  0, 0, 0x12D2,
-  'e','e','o',  0,  0, 0, 0x12D6,
-  'e','e','u',  0,  0, 0, 0x12D1,
-  'e','i',  0,  0,  0, 0, 0x12A2,
-  'e','o',  0,  0,  0, 0, 0x12A6,
-  'e','u',  0,  0,  0, 0, 0x12A1,
-  SYLW1('f', 0x1348)
-  'f', 'Y',   0,  0,  0, 0, 0x135A,
-  'f', 'Y', 'A',  0,  0, 0, 0x135A,
-  'f', 'Y', 'a',  0,  0, 0, 0x135A,
-  SYLW2('f', 0x1348)
-  SYLWW('g', 0x1308)
-  'h',  0,  0, 0, 0, 0, 0x1200+5,
-  'h', 'A', 0, 0, 0, 0, 0x1200+3,
-  'h', 'E', 0, 0, 0, 0, 0x1200+4,
-  'h', 'I', 0, 0, 0, 0, 0x1200+2,
-  'h', 'O', 0, 0, 0, 0, 0x1200+6,
-  'h', 'U', 0, 0, 0, 0, 0x1200+1,
-  'h', 'W', 0, 0, 0, 0, 0x1280+11,
-  'h', 'W', '\'', 0, 0, 0, 0x1280+13,
-  'h', 'W', 'A', 0, 0, 0, 0x1280+11,
-  'h', 'W', 'E', 0, 0, 0, 0x1280+12,
-  'h', 'W', 'I', 0, 0, 0, 0x1280+10,
-  'h', 'W', 'U', 0, 0, 0, 0x1280+13,
-  'h', 'W', 'a', 0, 0, 0, 0x1280+11,
-  'h', 'W', 'e', 0, 0, 0, 0x1280+8,
-  'h', 'W', 'e', 'e', 0, 0, 0x1280+12,
-  'h', 'W', 'i', 0, 0, 0, 0x1280+10,
-  'h', 'W', 'u', 0, 0, 0, 0x1280+13,
-  'h', 'a', 0, 0, 0, 0, 0x1200+3,
-  'h', 'e', 0, 0, 0, 0, 0x1200,
-  'h', 'e', 'e', 0, 0, 0, 0x1200+4,
-  'h', 'h', 0, 0, 0, 0, 0x1280+5,
-  'h', 'h', 'A', 0, 0, 0, 0x1280+3,
-  'h', 'h', 'E', 0, 0, 0, 0x1280+4,
-  'h', 'h', 'I', 0, 0, 0, 0x1280+2,
-  'h', 'h', 'O', 0, 0, 0, 0x1280+6,
-  'h', 'h', 'O', 'O', 0, 0, 0x1280+8,
-  'h', 'h', 'U', 0, 0, 0, 0x1280+1,
-  'h', 'h', 'W', 0, 0, 0, 0x1280+11,
-  'h', 'h', 'W', '\'', 0, 0, 0x1280+13,
-  'h', 'h', 'W', 'A', 0, 0, 0x1280+11,
-  'h', 'h', 'W', 'E', 0, 0, 0x1280+12,
-  'h', 'h', 'W', 'I', 0, 0, 0x1280+10,
-  'h', 'h', 'W', 'U', 0, 0, 0x1280+13,
-  'h', 'h', 'W', 'a', 0, 0, 0x1280+11,
-  'h', 'h', 'W', 'e', 0, 0, 0x1280+8,
-  'h', 'h', 'W', 'e', 'e', 0, 0x1280+12,
-  'h', 'h', 'W', 'i', 0, 0, 0x1280+10,
-  'h', 'h', 'W', 'u', 0, 0, 0x1280+13,
-  'h', 'h', 'a', 0, 0, 0, 0x1280+3,
-  'h', 'h', 'e', 0, 0, 0, 0x1280,
-  'h', 'h', 'e', 'e', 0, 0, 0x1280+4,
-  'h', 'h', 'i', 0, 0, 0, 0x1280+2,
-  'h', 'h', 'o', 0, 0, 0, 0x1280+6,
-  'h', 'h', 'o', 'o', 0, 0, 0x1280+8,
-  'h', 'h', 'u', 0, 0, 0, 0x1280+1,
-  'h', 'h', 'w', 'w',   0, 0, 0x1280+11,
-  'h', 'h', 'w', 'w', 'a', 0, 0x1280+11,
-  'h', 'h', 'w', 'w', 0, 0, 0x1280+11,
-  'h', 'h', 'w', 'w', '\'', 0, 0x1280+13,
-  'h', 'h', 'w', 'w', 'E', 0, 0x1280+12,
-  'h', 'h', 'w', 'w', 'a', 0, 0x1280+11,
-  'h', 'h', 'w', 'w', 'e', 0, 0x1280+8,
-  /* 'h', 'h', 'w', 'w', 'e', 'e', 0, 0x1280+12,  too long for now */
-  'h', 'h', 'w', 'w', 'i', 0, 0x1280+10,
-  'h', 'h', 'w', 'w', 'u', 0, 0x1280+13,
-  'h', 'i', 0, 0, 0, 0, 0x1200+2,
-  'h', 'o', 0, 0, 0, 0, 0x1200+6,
-  'h', 'u', 0, 0, 0, 0, 0x1200+1,
-  'h', 'w', 'w',   0, 0, 0, 0x1280+11,
-  'h', 'w', 'w', 'a', 0, 0, 0x1280+11,
-  'h', 'w', 'w', 0, 0, 0, 0x1280+11,
-  'h', 'w', 'w', '\'', 0, 0, 0x1280+13,
-  'h', 'w', 'w', 'E', 0, 0, 0x1280+12,
-  'h', 'w', 'w', 'a', 0, 0, 0x1280+11,
-  'h', 'w', 'w', 'e', 0, 0, 0x1280+8,
-  'h', 'w', 'w', 'e', 'e', 0, 0x1280+12,
-  'h', 'w', 'w', 'i', 0, 0, 0x1280+10,
-  'h', 'w', 'w', 'u', 0, 0, 0x1280+13,
-  'i',  0,  0,  0,  0, 0, 0x12A2,
-  'i', 'i', 0,  0,  0, 0, 0x12D2,
-  SYLW('j', 0x1300)
-  SYLWW('k', 0x12a8)
-  SYLW('l', 0x1208)
-  SYLW1('m', 0x1218)
-  'm', 'Y',   0,  0,  0, 0, 0x1359,
-  'm', 'Y', 'A',  0,  0, 0, 0x1359,
-  'm', 'Y', 'a',  0,  0, 0, 0x1359,
-  SYLW2('m', 0x1218)
-  SYLW('n', 0x1290)
-  'o',  0,  0,  0,  0, 0, 0x12A6,
-  'o','o',  0,  0,  0, 0, 0x12D6,
-  SYLW('p', 0x1350)
-  SYLWW('q', 0x1240)
-  SYLW1('r', 0x1228)
-  'r', 'Y',   0,  0,  0, 0, 0x1358,
-  'r', 'Y', 'A',  0,  0, 0, 0x1358,
-  'r', 'Y', 'a',  0,  0, 0, 0x1358,
-  SYLW2('r', 0x1228)
-  's',  0,  0, 0, 0, 0, 0x1230+5,
-  's', 'A', 0, 0, 0, 0, 0x1230+3,
-  's', 'E', 0, 0, 0, 0, 0x1230+4,
-  's', 'I', 0, 0, 0, 0, 0x1230+2,
-  's', 'O', 0, 0, 0, 0, 0x1230+6,
-  's', 'U', 0, 0, 0, 0, 0x1230+1,
-  's', 'W', 0, 0, 0, 0, 0x1230+7,
-  's', 'W', 'A', 0, 0, 0, 0x1230+7,
-  's', 'W', 'a', 0, 0, 0, 0x1230+7,
-  's', 'a', 0, 0, 0, 0, 0x1230+3,
-  's', 'e', 0, 0, 0, 0, 0x1230,
-  's', 'e', 'e', 0, 0, 0, 0x1230+4,
-  's', 'i', 0, 0, 0, 0, 0x1230+2,
-  's', 'o', 0, 0, 0, 0, 0x1230+6,
-  's', 's', 0, 0, 0, 0, 0x1220+5,
-  's', 's', 'A', 0, 0, 0, 0x1220+3,
-  's', 's', 'E', 0, 0, 0, 0x1220+4,
-  's', 's', 'I', 0, 0, 0, 0x1220+2,
-  's', 's', 'O', 0, 0, 0, 0x1220+6,
-  's', 's', 'U', 0, 0, 0, 0x1220+1,
-  's', 's', 'W', 0, 0, 0, 0x1220+7,
-  's', 's', 'W', 'A', 0, 0, 0x1220+7,
-  's', 's', 'W', 'a', 0, 0, 0x1220+7,
-  's', 's', 'a', 0, 0, 0, 0x1220+3,
-  's', 's', 'e', 0, 0, 0, 0x1220,
-  's', 's', 'e', 'e', 0, 0, 0x1220+4,
-  's', 's', 'i', 0, 0, 0, 0x1220+2,
-  's', 's', 'o', 0, 0, 0, 0x1220+6,
-  's', 's', 'u', 0, 0, 0, 0x1220+1,
-  's', 's', 'w', 'w', 0, 0, 0x1220+7,
-  's', 's', 'w', 'w', 'a', 0, 0x1220+7,
-  's', 'u', 0, 0, 0, 0, 0x1230+1,
-  's', 'w', 'w',   0, 0, 0, 0x1230+7,
-  's', 'w', 'w', 'a', 0, 0, 0x1230+7,
-  SYLW('t', 0x1270)
-  'u',  0,  0,  0,  0, 0, 0x12A1,
-  'u','u',  0,  0,  0, 0, 0x12D1,
-  SYLW('v', 0x1268)
-  SYL('w', 0x12c8)
-  SYLW('x', 0x1238)
-  SYL('y', 0x12e8)
-  SYLW('z', 0x12d8)
-  GDK_KEY_Shift_L, GDK_KEY_space, 0, 0, 0, 0, 0x1361,
-  GDK_KEY_Shift_R, GDK_KEY_space, 0, 0, 0, 0, 0x1361,
-};
-
-static void
-ti_et_class_init (GtkIMContextSimpleClass *class)
-{
-}
-
-static void
-ti_et_init (GtkIMContextSimple *im_context)
-{
-  gtk_im_context_simple_add_table (im_context,
-                                  ti_et_compose_seqs,
-                                  5,
-                                  G_N_ELEMENTS (ti_et_compose_seqs) / (5 + 2));
-}
-
-static const GtkIMContextInfo ti_et_info = { 
-  "ti_et",                /* ID */
-  NC_("input method menu", "Tigrigna-Ethiopian (EZ+)"), /* Human readable name */
-  GETTEXT_PACKAGE,        /* Translation domain */
-   GTK_LOCALEDIR,         /* Dir for bindtextdomain (not strictly needed for "gtk+") */
-  "ti"                    /* Languages for which this module is the default */
-};
-
-static const GtkIMContextInfo *info_list[] = {
-  &ti_et_info
-};
-
-#ifndef INCLUDE_IM_ti_et
-#define MODULE_ENTRY(type, function) G_MODULE_EXPORT type im_module_ ## function
-#else
-#define MODULE_ENTRY(type, function) type _gtk_immodule_ti_et_ ## function
-#endif
-
-MODULE_ENTRY (void, init) (GTypeModule *module)
-{
-  ti_et_register_type (module);
-}
-
-MODULE_ENTRY (void, exit) (void)
-{
-}
-
-MODULE_ENTRY (void, list) (const GtkIMContextInfo ***contexts,
-                          int                      *n_contexts)
-{
-  *contexts = info_list;
-  *n_contexts = G_N_ELEMENTS (info_list);
-}
-
-MODULE_ENTRY (GtkIMContext *, create) (const gchar *context_id)
-{
-  if (strcmp (context_id, "ti_et") == 0)
-    return g_object_new (type_ti_et_translit, NULL);
-  else
-    return NULL;
-}
diff --git a/modules/input/imviqr.c b/modules/input/imviqr.c
deleted file mode 100644 (file)
index d9572f5..0000000
+++ /dev/null
@@ -1,280 +0,0 @@
-/* GTK - The GIMP Toolkit
- * Copyright (C) 2000 Red Hat Software
- * Copyright (C) 2000 SuSE Linux Ltd
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library. If not, see <http://www.gnu.org/licenses/>.
- *
- * Original author: Owen Taylor <otaylor@redhat.com>
- * 
- * Modified for VIQR - Robert Brady <robert@suse.co.uk>
- *
- */
-
-#include "config.h"
-#include <string.h>
-
-#include "gtk/gtk.h"
-#include "gdk/gdkkeysyms.h"
-
-#include "gtk/gtkimmodule.h"
-#include "gtk/gtkintl.h"
-
-GType type_viqr_translit = 0;
-
-static void viqr_class_init (GtkIMContextSimpleClass *class);
-static void viqr_init (GtkIMContextSimple *im_context);
-
-static void
-viqr_register_type (GTypeModule *module)
-{
-  const GTypeInfo object_info =
-  {
-    sizeof (GtkIMContextSimpleClass),
-    (GBaseInitFunc) NULL,
-    (GBaseFinalizeFunc) NULL,
-    (GClassInitFunc) viqr_class_init,
-    NULL,           /* class_finalize */
-    NULL,           /* class_data */
-    sizeof (GtkIMContextSimple),
-    0,
-    (GInstanceInitFunc) viqr_init,
-  };
-
-  type_viqr_translit = 
-    g_type_module_register_type (module,
-                                GTK_TYPE_IM_CONTEXT_SIMPLE,
-                                "GtkIMContextViqr",
-                                &object_info, 0);
-}
-
-static guint16 viqr_compose_seqs[] = {
-  GDK_KEY_A,                   0,                0, 0, 0, 'A',
-  GDK_KEY_A,                   GDK_KEY_apostrophe,   0, 0, 0, 0xc1,
-  GDK_KEY_A,  GDK_KEY_parenleft,   0,                0, 0,    0x102,
-  GDK_KEY_A,  GDK_KEY_parenleft,   GDK_KEY_apostrophe,   0, 0,    0x1eae,
-  GDK_KEY_A,  GDK_KEY_parenleft,   GDK_KEY_period,       0, 0,    0x1eb6,
-  GDK_KEY_A,  GDK_KEY_parenleft,   GDK_KEY_question,     0, 0,    0x1eb2,
-  GDK_KEY_A,  GDK_KEY_parenleft,   GDK_KEY_grave,        0, 0,    0x1eb0,
-  GDK_KEY_A,  GDK_KEY_parenleft,   GDK_KEY_asciitilde,   0, 0,    0x1eb4,
-  GDK_KEY_A,                   GDK_KEY_period,       0, 0, 0, 0x1ea0,
-  GDK_KEY_A,                   GDK_KEY_question,     0, 0, 0, 0x1ea2,
-  GDK_KEY_A,  GDK_KEY_asciicircum, 0,                0, 0,    0xc2,
-  GDK_KEY_A,  GDK_KEY_asciicircum, GDK_KEY_apostrophe,   0, 0,    0x1ea4,
-  GDK_KEY_A,  GDK_KEY_asciicircum, GDK_KEY_period,       0, 0,    0x1eac,
-  GDK_KEY_A,  GDK_KEY_asciicircum, GDK_KEY_question,     0, 0,    0x1ea8,
-  GDK_KEY_A,  GDK_KEY_asciicircum, GDK_KEY_grave,        0, 0,    0x1ea6,
-  GDK_KEY_A,  GDK_KEY_asciicircum, GDK_KEY_asciitilde,   0, 0,    0x1eaa,
-  GDK_KEY_A,                   GDK_KEY_grave,        0, 0, 0, 0xc0,
-  GDK_KEY_A,                   GDK_KEY_asciitilde,   0, 0, 0, 0xc3,
-  GDK_KEY_D,                   0,                0, 0, 0, 'D',
-  GDK_KEY_D,                   GDK_KEY_D,            0, 0, 0, 0x110,
-  GDK_KEY_D,                   GDK_KEY_d,            0, 0, 0, 0x110,
-  GDK_KEY_E,                   0,                0, 0, 0, 'E',
-  GDK_KEY_E,                   GDK_KEY_apostrophe,   0, 0, 0, 0xc9,
-  GDK_KEY_E,                   GDK_KEY_period,       0, 0, 0, 0x1eb8,
-  GDK_KEY_E,                   GDK_KEY_question,     0, 0, 0, 0x1eba,
-  GDK_KEY_E,  GDK_KEY_asciicircum, 0,                0, 0,    0xca,
-  GDK_KEY_E,  GDK_KEY_asciicircum, GDK_KEY_apostrophe,   0, 0,    0x1ebe,
-  GDK_KEY_E,  GDK_KEY_asciicircum, GDK_KEY_period,       0, 0,    0x1ec6,
-  GDK_KEY_E,  GDK_KEY_asciicircum, GDK_KEY_question,     0, 0,    0x1ec2,
-  GDK_KEY_E,  GDK_KEY_asciicircum, GDK_KEY_grave,        0, 0,    0x1ec0,
-  GDK_KEY_E,  GDK_KEY_asciicircum, GDK_KEY_asciitilde,   0, 0,    0x1ec4,
-  GDK_KEY_E,                   GDK_KEY_grave,        0, 0, 0, 0xc8,
-  GDK_KEY_E,                   GDK_KEY_asciitilde,   0, 0, 0, 0x1ebc,
-  GDK_KEY_I,                   0,                0, 0, 0, 'I',
-  GDK_KEY_I,                   GDK_KEY_apostrophe,   0, 0, 0, 0xcd,
-  GDK_KEY_I,                   GDK_KEY_period,       0, 0, 0, 0x1eca,
-  GDK_KEY_I,                   GDK_KEY_question,     0, 0, 0, 0x1ec8,
-  GDK_KEY_I,                   GDK_KEY_grave,        0, 0, 0, 0xcc,
-  GDK_KEY_I,                   GDK_KEY_asciitilde,   0, 0, 0, 0x128,
-  GDK_KEY_O,                   0,                0, 0, 0, 'O',
-  GDK_KEY_O,                   GDK_KEY_apostrophe,   0, 0, 0, 0xD3,
-  GDK_KEY_O,  GDK_KEY_plus,        0,                0, 0,    0x1a0,
-  GDK_KEY_O,  GDK_KEY_plus,        GDK_KEY_apostrophe,   0, 0,    0x1eda,
-  GDK_KEY_O,  GDK_KEY_plus,        GDK_KEY_period,       0, 0,    0x1ee2,
-  GDK_KEY_O,  GDK_KEY_plus,        GDK_KEY_question,     0, 0,    0x1ede,
-  GDK_KEY_O,  GDK_KEY_plus,        GDK_KEY_grave,        0, 0,    0x1edc,
-  GDK_KEY_O,  GDK_KEY_plus,        GDK_KEY_asciitilde,   0, 0,    0x1ee0,
-  GDK_KEY_O,                   GDK_KEY_period,       0, 0, 0, 0x1ecc,
-  GDK_KEY_O,                   GDK_KEY_question,     0, 0, 0, 0x1ece,
-  GDK_KEY_O,  GDK_KEY_asciicircum, 0,                0, 0,    0xd4,
-  GDK_KEY_O,  GDK_KEY_asciicircum, GDK_KEY_apostrophe,   0, 0,    0x1ed0,
-  GDK_KEY_O,  GDK_KEY_asciicircum, GDK_KEY_period,       0, 0,    0x1ed8,
-  GDK_KEY_O,  GDK_KEY_asciicircum, GDK_KEY_question,     0, 0,    0x1ed4,
-  GDK_KEY_O,  GDK_KEY_asciicircum, GDK_KEY_grave,        0, 0,    0x1ed2,
-  GDK_KEY_O,  GDK_KEY_asciicircum, GDK_KEY_asciitilde,   0, 0,    0x1ed6,
-  GDK_KEY_O,                   GDK_KEY_grave,        0, 0, 0, 0xD2,
-  GDK_KEY_O,                   GDK_KEY_asciitilde,   0, 0, 0, 0xD5,
-  GDK_KEY_U,                   0,                0, 0, 0, 'U',
-  GDK_KEY_U,                   GDK_KEY_apostrophe,   0, 0, 0, 0xDA,
-  GDK_KEY_U,  GDK_KEY_plus,        0,                0, 0,    0x1af,
-  GDK_KEY_U,  GDK_KEY_plus,        GDK_KEY_apostrophe,   0, 0,    0x1ee8,
-  GDK_KEY_U,  GDK_KEY_plus,        GDK_KEY_period,       0, 0,    0x1ef0,
-  GDK_KEY_U,  GDK_KEY_plus,        GDK_KEY_question,     0, 0,    0x1eec,
-  GDK_KEY_U,  GDK_KEY_plus,        GDK_KEY_grave,        0, 0,    0x1eea,
-  GDK_KEY_U,  GDK_KEY_plus,        GDK_KEY_asciitilde,   0, 0,    0x1eee,
-  GDK_KEY_U,                   GDK_KEY_period,       0, 0, 0, 0x1ee4,
-  GDK_KEY_U,                   GDK_KEY_question,     0, 0, 0, 0x1ee6,
-  GDK_KEY_U,                   GDK_KEY_grave,        0, 0, 0, 0xd9,
-  GDK_KEY_U,                   GDK_KEY_asciitilde,   0, 0, 0, 0x168,
-  GDK_KEY_Y,                   0,                0, 0, 0, 'Y',
-  GDK_KEY_Y,                   GDK_KEY_apostrophe,   0, 0, 0, 0xdd,
-  GDK_KEY_Y,                   GDK_KEY_period,       0, 0, 0, 0x1ef4,
-  GDK_KEY_Y,                   GDK_KEY_question,     0, 0, 0, 0x1ef6,
-  GDK_KEY_Y,                   GDK_KEY_grave,        0, 0, 0, 0x1ef2,
-  GDK_KEY_Y,                   GDK_KEY_asciitilde,   0, 0, 0, 0x1ef8,
-  /* Do we need anything else here? */
-  GDK_KEY_backslash,           0,                0, 0, 0, 0,
-  GDK_KEY_backslash,           GDK_KEY_apostrophe,   0, 0, 0, '\'',
-  GDK_KEY_backslash,           GDK_KEY_parenleft,    0, 0, 0, '(',
-  GDK_KEY_backslash,           GDK_KEY_plus,         0, 0, 0, '+',
-  GDK_KEY_backslash,           GDK_KEY_period,       0, 0, 0, '.',
-  GDK_KEY_backslash,           GDK_KEY_question,     0, 0, 0, '?',
-  GDK_KEY_backslash,           GDK_KEY_D,            0, 0, 0, 'D',
-  GDK_KEY_backslash,           GDK_KEY_backslash,    0, 0, 0, '\\',
-  GDK_KEY_backslash,           GDK_KEY_asciicircum,  0, 0, 0, '^',
-  GDK_KEY_backslash,           GDK_KEY_grave,        0, 0, 0, '`',
-  GDK_KEY_backslash,           GDK_KEY_d,            0, 0, 0, 'd',
-  GDK_KEY_backslash,           GDK_KEY_asciitilde,   0, 0, 0, '~',
-  GDK_KEY_a,                   0,                0, 0, 0, 'a',
-  GDK_KEY_a,                   GDK_KEY_apostrophe,   0, 0, 0, 0xe1,
-  GDK_KEY_a, GDK_KEY_parenleft,    0,                0, 0,    0x103,
-  GDK_KEY_a, GDK_KEY_parenleft,    GDK_KEY_apostrophe,   0, 0,    0x1eaf,
-  GDK_KEY_a, GDK_KEY_parenleft,    GDK_KEY_period,       0, 0,    0x1eb7,
-  GDK_KEY_a, GDK_KEY_parenleft,    GDK_KEY_question,     0, 0,    0x1eb3,
-  GDK_KEY_a, GDK_KEY_parenleft,    GDK_KEY_grave,        0, 0,    0x1eb1,
-  GDK_KEY_a, GDK_KEY_parenleft,    GDK_KEY_asciitilde,   0, 0,    0x1eb5,
-  GDK_KEY_a,                   GDK_KEY_period,       0, 0, 0, 0x1ea1,
-  GDK_KEY_a,                   GDK_KEY_question,     0, 0, 0, 0x1ea3,
-  GDK_KEY_a, GDK_KEY_asciicircum,  0,                0, 0,    0xe2,
-  GDK_KEY_a, GDK_KEY_asciicircum,  GDK_KEY_apostrophe,   0, 0,    0x1ea5,
-  GDK_KEY_a, GDK_KEY_asciicircum,  GDK_KEY_period,       0, 0,    0x1ead,
-  GDK_KEY_a, GDK_KEY_asciicircum,  GDK_KEY_question,     0, 0,    0x1ea9,
-  GDK_KEY_a, GDK_KEY_asciicircum,  GDK_KEY_grave,        0, 0,    0x1ea7,
-  GDK_KEY_a, GDK_KEY_asciicircum,  GDK_KEY_asciitilde,   0, 0,    0x1eab,
-  GDK_KEY_a,                   GDK_KEY_grave,        0, 0, 0, 0xe0,
-  GDK_KEY_a,                   GDK_KEY_asciitilde,   0, 0, 0, 0xe3,
-  GDK_KEY_d,                   0,                0, 0, 0, 'd',
-  GDK_KEY_d,                   GDK_KEY_d,            0, 0, 0, 0x111,
-  GDK_KEY_e,                   0,                0, 0, 0, 'e',
-  GDK_KEY_e,                   GDK_KEY_apostrophe,   0, 0, 0, 0xe9,
-  GDK_KEY_e,                   GDK_KEY_period,       0, 0, 0, 0x1eb9,
-  GDK_KEY_e,                   GDK_KEY_question,     0, 0, 0, 0x1ebb,
-  GDK_KEY_e, GDK_KEY_asciicircum,  0,                0, 0,    0xea,
-  GDK_KEY_e, GDK_KEY_asciicircum,  GDK_KEY_apostrophe,   0, 0,    0x1ebf,
-  GDK_KEY_e, GDK_KEY_asciicircum,  GDK_KEY_period,       0, 0,    0x1ec7,
-  GDK_KEY_e, GDK_KEY_asciicircum,  GDK_KEY_question,     0, 0,    0x1ec3,
-  GDK_KEY_e, GDK_KEY_asciicircum,  GDK_KEY_grave,        0, 0,    0x1ec1,
-  GDK_KEY_e, GDK_KEY_asciicircum,  GDK_KEY_asciitilde,   0, 0,    0x1ec5,
-  GDK_KEY_e,                   GDK_KEY_grave,        0, 0, 0, 0xe8,
-  GDK_KEY_e,                   GDK_KEY_asciitilde,   0, 0, 0, 0x1ebd,
-  GDK_KEY_i,                   0,                0, 0, 0, 'i',
-  GDK_KEY_i,                   GDK_KEY_apostrophe,   0, 0, 0, 0xed,
-  GDK_KEY_i,                   GDK_KEY_period,       0, 0, 0, 0x1ecb,
-  GDK_KEY_i,                   GDK_KEY_question,     0, 0, 0, 0x1ec9,
-  GDK_KEY_i,                   GDK_KEY_grave,        0, 0, 0, 0xec,
-  GDK_KEY_i,                   GDK_KEY_asciitilde,   0, 0, 0, 0x129,
-  GDK_KEY_o,                   0,                0, 0, 0, 'o',
-  GDK_KEY_o,                   GDK_KEY_apostrophe,   0, 0, 0, 0xF3,
-  GDK_KEY_o,  GDK_KEY_plus,        0,                0, 0,    0x1a1,
-  GDK_KEY_o,  GDK_KEY_plus,        GDK_KEY_apostrophe,   0, 0,    0x1edb,
-  GDK_KEY_o,  GDK_KEY_plus,        GDK_KEY_period,       0, 0,    0x1ee3,
-  GDK_KEY_o,  GDK_KEY_plus,        GDK_KEY_question,     0, 0,    0x1edf,
-  GDK_KEY_o,  GDK_KEY_plus,        GDK_KEY_grave,        0, 0,    0x1edd,
-  GDK_KEY_o,  GDK_KEY_plus,        GDK_KEY_asciitilde,   0, 0,    0x1ee1,
-  GDK_KEY_o,                   GDK_KEY_period,       0, 0, 0, 0x1ecd,
-  GDK_KEY_o,                   GDK_KEY_question,     0, 0, 0, 0x1ecf,
-  GDK_KEY_o,  GDK_KEY_asciicircum, 0,                0, 0,    0xf4,
-  GDK_KEY_o,  GDK_KEY_asciicircum, GDK_KEY_apostrophe,   0, 0,    0x1ed1,
-  GDK_KEY_o,  GDK_KEY_asciicircum, GDK_KEY_period,       0, 0,    0x1ed9,
-  GDK_KEY_o,  GDK_KEY_asciicircum, GDK_KEY_question,     0, 0,    0x1ed5,
-  GDK_KEY_o,  GDK_KEY_asciicircum, GDK_KEY_grave,        0, 0,    0x1ed3,
-  GDK_KEY_o,  GDK_KEY_asciicircum, GDK_KEY_asciitilde,   0, 0,    0x1ed7,
-  GDK_KEY_o,                   GDK_KEY_grave,        0, 0, 0, 0xF2,
-  GDK_KEY_o,                   GDK_KEY_asciitilde,   0, 0, 0, 0xF5,
-  GDK_KEY_u,                   0,                0, 0, 0, 'u',
-  GDK_KEY_u,                   GDK_KEY_apostrophe,   0, 0, 0, 0xFA,
-  GDK_KEY_u,  GDK_KEY_plus,        0,                0, 0,    0x1b0,
-  GDK_KEY_u,  GDK_KEY_plus,        GDK_KEY_apostrophe,   0, 0,    0x1ee9,
-  GDK_KEY_u,  GDK_KEY_plus,        GDK_KEY_period,       0, 0,    0x1ef1,
-  GDK_KEY_u,  GDK_KEY_plus,        GDK_KEY_question,     0, 0,    0x1eed,
-  GDK_KEY_u,  GDK_KEY_plus,        GDK_KEY_grave,        0, 0,    0x1eeb,
-  GDK_KEY_u,  GDK_KEY_plus,        GDK_KEY_asciitilde,   0, 0,    0x1eef,
-  GDK_KEY_u,                   GDK_KEY_period,       0, 0, 0, 0x1ee5,
-  GDK_KEY_u,                   GDK_KEY_question,     0, 0, 0, 0x1ee7,
-  GDK_KEY_u,                   GDK_KEY_grave,        0, 0, 0, 0xf9,
-  GDK_KEY_u,                   GDK_KEY_asciitilde,   0, 0, 0, 0x169,
-  GDK_KEY_y,                   0,                0, 0, 0, 'y',
-  GDK_KEY_y,                   GDK_KEY_apostrophe,   0, 0, 0, 0xfd,
-  GDK_KEY_y,                   GDK_KEY_period,       0, 0, 0, 0x1ef5,
-  GDK_KEY_y,                   GDK_KEY_question,     0, 0, 0, 0x1ef7,
-  GDK_KEY_y,                   GDK_KEY_grave,        0, 0, 0, 0x1ef3,
-  GDK_KEY_y,                   GDK_KEY_asciitilde,   0, 0, 0, 0x1ef9,
-};
-
-static void
-viqr_class_init (GtkIMContextSimpleClass *class)
-{
-}
-
-static void
-viqr_init (GtkIMContextSimple *im_context)
-{
-  gtk_im_context_simple_add_table (im_context,
-                                  viqr_compose_seqs,
-                                  4,
-                                  G_N_ELEMENTS (viqr_compose_seqs) / (4 + 2));
-}
-
-static const GtkIMContextInfo viqr_info = { 
-  "viqr",                 /* ID */
-  NC_("input method menu", "Vietnamese (VIQR)"), /* Human readable name */
-  GETTEXT_PACKAGE,        /* Translation domain */
-   GTK_LOCALEDIR,         /* Dir for bindtextdomain (not strictly needed for "gtk+") */
-  "vi"                    /* Languages for which this module is the default */
-};
-
-static const GtkIMContextInfo *info_list[] = {
-  &viqr_info
-};
-
-#ifndef INCLUDE_IM_viqr
-#define MODULE_ENTRY(type, function) G_MODULE_EXPORT type im_module_ ## function
-#else
-#define MODULE_ENTRY(type, function) type _gtk_immodule_viqr_ ## function
-#endif
-
-MODULE_ENTRY (void, init) (GTypeModule *module)
-{
-  viqr_register_type (module);
-}
-
-MODULE_ENTRY (void, exit) (void)
-{
-}
-
-MODULE_ENTRY (void, list) (const GtkIMContextInfo ***contexts,
-                          int                      *n_contexts)
-{
-  *contexts = info_list;
-  *n_contexts = G_N_ELEMENTS (info_list);
-}
-
-MODULE_ENTRY (GtkIMContext *, create) (const gchar *context_id)
-{
-  if (strcmp (context_id, "viqr") == 0)
-    return g_object_new (type_viqr_translit, NULL);
-  else
-    return NULL;
-}
index 176830b3230e8c6a8b0e1c31522cad4bfe4aa501..eb026f4705c239a7241e08ad682678bfa0962e9b 100644 (file)
@@ -16,21 +16,7 @@ if dynamic_modules
   endif
 endif
 
-all_immodules = [
-  'am-et',
-  'cedilla',
-  'cyrillic-translit',
-  'inuktitut',
-  'ipa',
-  'multipress',
-  'thai',
-  'ti-er',
-  'ti-et',
-  'viqr',
-  'wayland',
-]
-
-all_immodules += backend_immodules
+all_immodules = backend_immodules
 
 # Allow building some or all immodules included
 included_immodules = get_option('included-immodules').split(',')
@@ -51,23 +37,6 @@ endforeach
 immodules_subdir = 'gtk-4.0/@0@/immodules'.format(gtk_binary_version)
 immodules_install_dir = join_paths(gtk_libdir, immodules_subdir)
 
-mp_confdir = join_paths(gtk_sysconfdir, 'gtk-4.0')
-mp_cargs = [
- '-DMULTIPRESS_LOCALEDIR=""', # FIXME: where is $(mplocaledir) ever set?
- '-DMULTIPRESS_CONFDIR="@0@"'.format(mp_confdir),
- '-DGDK_DISABLE_DEPRECATION_WARNINGS',
-]
-
-install_data('im-multipress.conf', install_dir : mp_confdir)
-
-# Format:
-#  - protocol name
-#  - protocol stability ('stable' or 'unstable')
-#  - protocol version (if stability is 'unstable')
-proto_sources = [
-  ['gtk-text-input', 'stable', ],
-]
-
 im_wayland_gen_headers = []
 im_wayland_sources = files('imwayland.c')
 wayland_scanner = find_program('wayland-scanner')
@@ -108,18 +77,7 @@ foreach p: proto_sources
 endforeach
 
 method_defs = [
-  ['am-et', files('imam-et.c')],
-  ['cedilla', files('imcedilla.c')],
-  ['cyrillic-translit', files('imcyrillic-translit.c')],
-  ['ti-er', files('imti-er.c')],
-  ['ti-et', files('imti-et.c')],
-  ['thai', files('thai-charprop.c', 'gtkimcontextthai.c', 'imthai.c')],
-  ['viqr', files('imviqr.c')],
-  ['inuktitut', files('iminuktitut.c')],
-  ['ipa', files('imipa.c')],
-  # backend modules
   ['broadway', files('imbroadway.c')],
-  ['multipress', files('gtkimcontextmultipress.c', 'immultipress.c'), [], mp_cargs],
   ['quartz', ('imquartz.c'), [], ('-xobjective-c')],
   ['xim', files('gtkimcontextxim.c', 'imxim.c')],
   ['ime', files('gtkimcontextime.c', 'imime.c'), ['imm32']],
diff --git a/modules/input/thai-charprop.c b/modules/input/thai-charprop.c
deleted file mode 100644 (file)
index a9f7a05..0000000
+++ /dev/null
@@ -1,138 +0,0 @@
-#include "thai-charprop.h"
-
-const gshort thai_char_type[256] = {
-  /*       0,   1,   2,   3,   4,   5,   6,   7,
-           8,   9,   A,   B,   C,   D,   E,   F  */
-
-         /* CL1 */
-  /*00*/ _ND, _ND, _ND, _ND, _ND, _ND, _ND, _ND,
-         _ND, _ND, _ND, _ND, _ND, _ND, _ND, _ND,
-  /*10*/ _ND, _ND, _ND, _ND, _ND, _ND, _ND, _ND,
-         _ND, _ND, _ND, _ND, _ND, _ND, _ND, _ND,
-
-         /* Lao zone: [U+0E80..U+0EDF] */
-  /*20*/ _ND, _NC, _NC, _ND, _NC, _ND, _ND, _NC,
-         _NC, _ND, _NC, _ND, _ND, _NC, _ND, _ND,
-  /*30*/ _ND, _ND, _ND, _ND, _NC, _NC, _NC, _NC,
-         _ND, _NC, _NC, _UC, _NC, _UC, _NC, _UC,
-  /*40*/ _ND, _NC, _UC, _NC, _ND, _NC, _ND, _NC,
-         _ND, _ND, _NC, _NC, _ND, _NC, _NC, _ND,
-  /*50*/ _ND, _AV, _ND, _AM, _AV, _AV, _AV, _AV,
-         _BV, _BV, _ND, _AV, _BD, _NC, _ND, _ND,
-  /*60*/ _ND, _ND, _ND, _ND, _ND, _ND, _ND, _AD,
-         _TN, _TN, _TN, _TN, _AD, _AD, _ND, _ND,
-  /*70*/ _ND, _ND, _ND, _ND, _ND, _ND, _ND, _ND,
-         _ND, _ND, _ND, _ND, _NC, _NC, _ND, _ND,
-
-         /* CL2 */
-  /*80*/ _ND, _ND, _ND, _ND, _ND, _ND, _ND, _ND,
-         _ND, _ND, _ND, _ND, _ND, _ND, _ND, _ND,
-  /*90*/ _ND, _ND, _ND, _ND, _ND, _ND, _ND, _ND,
-         _ND, _ND, _ND, _ND, _ND, _ND, _ND, _ND,
-
-         /* Thai zone: [U+0E00..U+0E5F] */
-  /*A0*/ _ND, _NC, _NC, _NC, _NC, _NC, _NC, _NC,
-         _NC, _NC, _NC, _NC, _NC, _SC, _BC, _BC,
-  /*B0*/ _SC, _NC, _NC, _NC, _NC, _NC, _NC, _NC,
-         _NC, _NC, _NC, _UC, _NC, _UC, _NC, _UC,
-  /*C0*/ _NC, _NC, _NC, _NC, _ND, _NC, _ND, _NC,
-         _NC, _NC, _NC, _NC, _UC, _NC, _NC, _ND,
-  /*D0*/ _ND, _AV, _ND, _AM, _AV, _AV, _AV, _AV,
-         _BV, _BV, _BD, _ND, _ND, _ND, _ND, _ND,
-  /*E0*/ _ND, _ND, _ND, _ND, _ND, _ND, _ND, _AD,
-         _TN, _TN, _TN, _TN, _AD, _AD, _AD, _ND,
-  /*F0*/ _ND, _ND, _ND, _ND, _ND, _ND, _ND, _ND,
-         _ND, _ND, _ND, _ND, _ND, _ND, _ND, _ND,
-};
-
-const gshort thai_TAC_char_class[256] = {
-  /*      0,   1,   2,   3,   4,   5,   6,   7,
-           8,   9,   A,   B,   C,   D,   E,   F  */
-
-         /* CL1 */
-  /*00*/ CTRL,CTRL,CTRL,CTRL,CTRL,CTRL,CTRL,CTRL,
-         CTRL,CTRL,CTRL,CTRL,CTRL,CTRL,CTRL,CTRL,
-  /*10*/ CTRL,CTRL,CTRL,CTRL,CTRL,CTRL,CTRL,CTRL,
-         CTRL,CTRL,CTRL,CTRL,CTRL,CTRL,CTRL,CTRL,
-
-         /* Lao zone: [U+0E80..U+0EDF] */
-  /*20*/  NON,CONS,CONS, NON,CONS, NON, NON,CONS,
-         CONS, NON,CONS, NON, NON,CONS, NON, NON,
-  /*30*/  NON, NON, NON, NON,CONS,CONS,CONS,CONS,
-          NON,CONS,CONS,CONS,CONS,CONS,CONS,CONS,
-  /*40*/  NON,CONS,CONS,CONS, NON,CONS, NON,CONS,
-          NON, NON,CONS,CONS, NON,CONS,CONS, NON,
-  /*50*/  FV1, AV2, FV1,  AM, AV1, AV3, AV2, AV3,
-          BV1, BV2, NON, AV2,BCON, FV3, NON, NON,
-  /*60*/   LV,  LV,  LV,  LV,  LV, NON, NON, NON,
-         TONE,TONE,TONE,TONE, AD1, AD4, NON, NON,
-  /*70*/  NON, NON, NON, NON, NON, NON, NON, NON,
-          NON, NON, NON, NON,CONS,CONS, NON,CTRL,
-
-         /* CL2 */
-  /*80*/ CTRL,CTRL,CTRL,CTRL,CTRL,CTRL,CTRL,CTRL,
-         CTRL,CTRL,CTRL,CTRL,CTRL,CTRL,CTRL,CTRL,
-  /*90*/ CTRL,CTRL,CTRL,CTRL,CTRL,CTRL,CTRL,CTRL,
-         CTRL,CTRL,CTRL,CTRL,CTRL,CTRL,CTRL,CTRL,
-
-         /* Thai zone: [U+0E00..U+0E5F] */
-  /*A0*/  NON,CONS,CONS,CONS,CONS,CONS,CONS,CONS,
-         CONS,CONS,CONS,CONS,CONS,CONS,CONS,CONS,
-  /*B0*/ CONS,CONS,CONS,CONS,CONS,CONS,CONS,CONS,
-         CONS,CONS,CONS,CONS,CONS,CONS,CONS,CONS,
-  /*C0*/ CONS,CONS,CONS,CONS, FV3,CONS, FV3,CONS,
-         CONS,CONS,CONS,CONS,CONS,CONS,CONS, NON,
-  /*D0*/  FV1, AV2, FV1,  AM, AV1, AV3, AV2, AV3,
-          BV1, BV2,  BD, NON, NON, NON, NON, NON,
-  /*E0*/   LV,  LV,  LV,  LV,  LV, FV2, NON, AD2,
-         TONE,TONE,TONE,TONE, AD1, AD4, AD3, NON,
-  /*F0*/  NON, NON, NON, NON, NON, NON, NON, NON,
-          NON, NON, NON, NON, NON, NON, NON,CTRL,
-};
-
-const gchar thai_TAC_compose_input[20][20] = {
-      /* row: Cn-1,  column: Cn */
-      /*CTRL NON CONS LV FV1 FV2 FV3  AM BV1 BV2
-       * BD TONE AD1 AD2 AD3 AD4 AV1 AV2 AV3 BCON*/
-/*CTRL*/{'X','A','A','A','A','A','A','R','R','R',
-         'R','R','R','R','R','R','R','R','R','R'},
-/*NON */{'X','A','A','A','S','S','A','R','R','R',
-         'R','R','R','R','R','R','R','R','R','R'},
-/*CONS*/{'X','A','A','A','A','S','A','C','C','C',
-         'C','C','C','C','C','C','C','C','C','C'},
-/*LV  */{'X','S','A','S','S','S','S','R','R','R',
-         'R','R','R','R','R','R','R','R','R','R'},
-/*FV1 */{'X','A','A','A','A','S','A','R','R','R',
-         'R','R','R','R','R','R','R','R','R','R'},
-/*FV2 */{'X','A','A','A','A','S','A','R','R','R',
-         'R','R','R','R','R','R','R','R','R','R'},
-/*FV3 */{'X','A','A','A','S','A','S','R','R','R',
-         'R','R','R','R','R','R','R','R','R','R'},
-/*AM  */{'X','A','A','A','S','S','A','R','R','R',
-         'R','R','R','R','R','R','R','R','R','R'},
-/*BV1 */{'X','A','A','A','S','S','A','R','R','R',
-         'R','C','C','R','R','C','R','R','R','R'},
-/*BV2 */{'X','A','A','A','S','S','A','R','R','R',
-         'R','C','R','R','R','R','R','R','R','R'},
-/*BD  */{'X','A','A','A','S','S','A','R','R','R',
-         'R','R','R','R','R','R','R','R','R','R'},
-/*TONE*/{'X','A','A','A','A','A','A','C','R','R',
-         'R','R','R','R','R','R','R','R','R','R'},
-/*AD1 */{'X','A','A','A','S','S','A','R','R','R',
-         'R','R','R','R','R','R','R','R','R','R'},
-/*AD2 */{'X','A','A','A','S','S','A','R','R','R',
-         'R','R','R','R','R','R','R','R','R','R'},
-/*AD3 */{'X','A','A','A','S','S','A','R','R','R',
-         'R','R','R','R','R','R','R','R','R','R'},
-/*AD4 */{'X','A','A','A','S','S','A','R','R','R',
-         'R','C','R','R','R','R','R','R','R','R'},
-/*AV1 */{'X','A','A','A','S','S','A','R','R','R',
-         'R','C','C','R','R','C','R','R','R','R'},
-/*AV2 */{'X','A','A','A','S','S','A','R','R','R',
-         'R','C','R','R','R','R','R','R','R','R'},
-/*AV3 */{'X','A','A','A','S','S','A','R','R','R',
-         'R','C','R','C','R','R','R','R','R','R'},
-/*BCON*/{'X','A','A','A','A','S','A','C','C','C',
-         'R','C','R','R','R','C','C','C','C','R'},
-};
-
diff --git a/modules/input/thai-charprop.h b/modules/input/thai-charprop.h
deleted file mode 100644 (file)
index 83bf892..0000000
+++ /dev/null
@@ -1,96 +0,0 @@
-/* Pango
- * thai-charprop.h:
- *
- * Copyright (C) 1999 Red Hat Software
- * Author: Owen Taylor <otaylor@redhat.com>
- *
- * Software and Language Engineering Laboratory, NECTEC
- * Author: Theppitak Karoonboonyanan <thep@links.nectec.or.th>
- *
- * Copyright (c) 1996-2000 by Sun Microsystems, Inc.
- * Author: Chookij Vanatham <Chookij.Vanatham@Eng.Sun.COM>
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.         See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#ifndef __THAI_CHARPROP_H__
-#define __THAI_CHARPROP_H__
-
-#include <glib.h>
-
-#define isthai(wc)      (0x0E00 <= (wc) && (wc) < 0x0E60)
-#define islao(wc)       (0x0E80 <= (wc) && (wc) < 0x0EE0)
-/* ucs2tis()
- * Lao:  [0x0E80..0x0EDF] -> [0x20..0x7F]
- * Thai: [0x0E00..0x0E5F] -> [0xA0..0xFF]
- */
-#define ucs2tis(wc)     (((wc) - 0x0E00 + 0x20)^0x80)
-
-/* Define TACTIS character classes */
-#define CTRL           0
-#define NON            1
-#define CONS           2
-#define LV             3
-#define FV1            4
-#define FV2            5
-#define FV3            6
-#define AM             7
-#define BV1            8
-#define BV2            9
-#define BD             10
-#define TONE           11
-#define AD1            12
-#define AD2            13
-#define AD3            14
-#define AD4            15
-#define AV1            16
-#define AV2            17
-#define AV3            18
-#define BCON           19
-
-#define _ND            0
-#define _NC            1
-#define _UC            (1<<1)
-#define _BC            (1<<2)
-#define _SC            (1<<3)
-#define _AV            (1<<4)
-#define _BV            (1<<5)
-#define _TN            (1<<6)
-#define _AD            (1<<7)
-#define _BD            (1<<8)
-#define _AM            (1<<9)
-
-#define NoTailCons     _NC
-#define UpTailCons     _UC
-#define BotTailCons    _BC
-#define SpltTailCons   _SC
-#define Cons           (NoTailCons|UpTailCons|BotTailCons|SpltTailCons)
-#define AboveVowel     _AV
-#define BelowVowel     _BV
-#define Tone           _TN
-#define AboveDiac      _AD
-#define BelowDiac      _BD
-#define SaraAm         _AM
-
-#define is_char_type(wc, mask) (thai_char_type[ucs2tis ((wc))] & (mask))
-#define TAC_char_class(wc) \
-       (isthai(wc)||islao(wc) ? thai_TAC_char_class[ucs2tis (wc)] : NON)
-#define TAC_compose_input(wc1,wc2) \
-       thai_TAC_compose_input[TAC_char_class(wc1)][TAC_char_class(wc2)]
-
-extern const gshort thai_char_type[256];
-extern const gshort thai_TAC_char_class[256];
-extern const gchar  thai_TAC_compose_input[20][20];
-
-#endif /* __THAI_CHARPROP_H__ */